From d9edb47c98812d9617e5132b32202f5463ec0796 Mon Sep 17 00:00:00 2001 From: Andrea Adami Date: Tue, 12 Jan 2016 22:34:17 +0100 Subject: linux-yocto_3.14: remove stale recipe Kernel 3.14 and 3.19 have been removed from oe-core with commit 6814521d0b88ee66442158ed70e77cbdd35d4782 Signed-off-by: Andrea Adami --- .../linux/linux-yocto-3.14/OE-qvga-logo.patch | 232025 ----- .../linux/linux-yocto-3.14/OE-vga-logo.patch | 923225 ------------------ .../linux/linux-yocto-3.14/akita/defconfig | 445 - .../linux-yocto-3.14/c7x0/corgi-gpio_keys.patch | 80 - .../linux/linux-yocto-3.14/c7x0/defconfig | 375 - .../collie/arm-sa1100-add-cpu-clock.patch | 95 - .../collie/arm-sa1100-dummy-clk_set_rate.patch | 33 - .../collie/collie-LH28F640BF.patch | 97 - .../collie/collie-add-bootblock.patch | 29 - .../collie/collie-cfi-probe-again.patch | 29 - .../linux-yocto-3.14/collie/collie-irda.patch | 88 - .../collie/collie-mtd-resize.patch | 41 - .../collie/collie-use-gpio-charger.patch | 113 - .../linux/linux-yocto-3.14/collie/defconfig | 379 - .../fbdev-sa1100fb-make-use-of-device-clock.patch | 112 - .../collie/locomo-fix-SCL-SDA.patch | 28 - .../collie/locomo_kbd_tweak-r2.patch | 84 - .../collie/locomolcd-suspend-resume.patch | 92 - .../collie/pcmcia-sa1100-device-clock.patch | 91 - .../revert-arm-sa1100-dummy-clk_get_rate.patch | 32 - .../h1940/0001-rfkill-add-IR-type.patch | 59 - ...-Remove-S3C24XX_DMA-dependency-from-S3C24.patch | 30 - ...4xx-add-dma_coherent_mask-for-DMA-devices.patch | 35 - ...s3c24xx-Add-DMA-resources-for-SDI-and-I2S.patch | 34 - ...xx-drop-RFKILL-driver-for-H1940-bluetooth.patch | 202 - .../0006-ARM-s3c24xx-h1940-Add-nand-device.patch | 126 - ...007-ARM-s3c24xx-h1940-don-t-touch-UPLLCON.patch | 41 - ...008-ARM-s3c24xx-h1940-unlock-reset-button.patch | 52 - ...3c24xx-h1940-add-bluetooth-RF-kill-switch.patch | 100 - .../0010-ARM-s3c24xx-h1940-add-IR-switch.patch | 73 - ...s3c24xx-h1940-increase-oversampling-shift.patch | 29 - .../0012-ARM-s3c24xx-h1940-Add-DMA-device.patch | 27 - ...engine-s3c24xx-dma-Process-whole-SG-chain.patch | 27 - ...e-s3c24xx-dma-Add-cyclic-transfer-support.patch | 183 - ...015-s3cmci-port-DMA-code-to-dmaengine-API.patch | 370 - ...g-s3c24-xx-12-i2s-port-to-use-generic-dma.patch | 385 - ...g-drop-support-for-legacy-S3C24XX-DMA-API.patch | 515 - .../linux/linux-yocto-3.14/h1940/defconfig | 200 - ...r-for-Atmel-Microcontroller-on-iPaq-h3xxx.patch | 712 - ...ARM-sa1100-add-Micro-ASIC-platform-device.patch | 73 - ...r-for-microcontroller-keys-on-the-iPaq-h3.patch | 208 - ...light-add-driver-for-iPAQ-micro-backlight.patch | 147 - ...nput-driver-for-touchscreen-on-iPaq-h3xxx.patch | 198 - .../0006-leds-add-driver-for-the-iPAQ-micro.patch | 193 - ...-driver-for-battery-reading-on-iPaq-h3xxx.patch | 350 - .../linux/linux-yocto-3.14/h3600/defconfig | 95 - .../linux/linux-yocto-3.14/hx4700/defconfig | 180 - .../hx4700-change-led-trigger-assignments.patch | 33 - .../linux/linux-yocto-3.14/poodle/defconfig | 377 - .../poodle/locomo-fix-SCL-SDA.patch | 28 - .../poodle/locomo_kbd_tweak-r2.patch | 84 - .../poodle/locomolcd-suspend-resume.patch | 92 - .../revert-check-on-console-device.patch | 41 - .../linux/linux-yocto-3.14/spitz/defconfig | 444 - ...deo-move-backlight-to-the-end-of-Makefile.patch | 34 - ...02-tosa-bl-correct-backlight-calculations.patch | 39 - ...-tmio-call-tmiofb_set_par-in-tmiofb_probe.patch | 41 - .../0004-ARM-pxa-tosa-switch-to-gpio-charger.patch | 90 - ...5-ARM-pxa-tosa-fix-several-build-failures.patch | 32 - ...b-fail-ohci-suspend-if-full-state-restore.patch | 54 - ...97xx-adapt-parameters-to-tosa-touchscreen.patch | 31 - .../linux/linux-yocto-3.14/tosa/defconfig | 448 - recipes-kernel/linux/linux-yocto_3.14.bbappend | 137 - 63 files changed, 1164142 deletions(-) delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/OE-qvga-logo.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/OE-vga-logo.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/akita/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/c7x0/corgi-gpio_keys.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/c7x0/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/arm-sa1100-add-cpu-clock.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/arm-sa1100-dummy-clk_set_rate.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/collie-LH28F640BF.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/collie-add-bootblock.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/collie-cfi-probe-again.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/collie-irda.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/collie-mtd-resize.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/collie-use-gpio-charger.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/fbdev-sa1100fb-make-use-of-device-clock.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/locomo-fix-SCL-SDA.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/locomo_kbd_tweak-r2.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/locomolcd-suspend-resume.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/pcmcia-sa1100-device-clock.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/collie/revert-arm-sa1100-dummy-clk_get_rate.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0001-rfkill-add-IR-type.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0002-ARM-s3c24xx-Remove-S3C24XX_DMA-dependency-from-S3C24.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0003-ARM-s3c24xx-add-dma_coherent_mask-for-DMA-devices.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0004-ARM-s3c24xx-Add-DMA-resources-for-SDI-and-I2S.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0005-ARM-s3c24xx-drop-RFKILL-driver-for-H1940-bluetooth.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0006-ARM-s3c24xx-h1940-Add-nand-device.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0007-ARM-s3c24xx-h1940-don-t-touch-UPLLCON.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0008-ARM-s3c24xx-h1940-unlock-reset-button.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0009-ARM-s3c24xx-h1940-add-bluetooth-RF-kill-switch.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0010-ARM-s3c24xx-h1940-add-IR-switch.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0011-ARM-s3c24xx-h1940-increase-oversampling-shift.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0012-ARM-s3c24xx-h1940-Add-DMA-device.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0013-dmaengine-s3c24xx-dma-Process-whole-SG-chain.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0014-dmaengine-s3c24xx-dma-Add-cyclic-transfer-support.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0015-s3cmci-port-DMA-code-to-dmaengine-API.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0016-ASoC-samsung-s3c24-xx-12-i2s-port-to-use-generic-dma.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/0017-ASoC-samsung-drop-support-for-legacy-S3C24XX-DMA-API.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h1940/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/0001-MFD-driver-for-Atmel-Microcontroller-on-iPaq-h3xxx.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/0002-ARM-sa1100-add-Micro-ASIC-platform-device.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/0003-input-driver-for-microcontroller-keys-on-the-iPaq-h3.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/0004-fb-backlight-add-driver-for-iPAQ-micro-backlight.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/0005-input-driver-for-touchscreen-on-iPaq-h3xxx.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/0006-leds-add-driver-for-the-iPAQ-micro.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/0007-power-add-driver-for-battery-reading-on-iPaq-h3xxx.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/h3600/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/hx4700/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/hx4700/hx4700-change-led-trigger-assignments.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/poodle/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/poodle/locomo-fix-SCL-SDA.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/poodle/locomo_kbd_tweak-r2.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/poodle/locomolcd-suspend-resume.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/revert-check-on-console-device.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/spitz/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/0001-HACK-video-move-backlight-to-the-end-of-Makefile.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/0002-tosa-bl-correct-backlight-calculations.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/0003-tmio-call-tmiofb_set_par-in-tmiofb_probe.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/0004-ARM-pxa-tosa-switch-to-gpio-charger.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/0005-ARM-pxa-tosa-fix-several-build-failures.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/0006-mfd-tc6393xb-fail-ohci-suspend-if-full-state-restore.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/0007-wm97xx-adapt-parameters-to-tosa-touchscreen.patch delete mode 100644 recipes-kernel/linux/linux-yocto-3.14/tosa/defconfig delete mode 100644 recipes-kernel/linux/linux-yocto_3.14.bbappend diff --git a/recipes-kernel/linux/linux-yocto-3.14/OE-qvga-logo.patch b/recipes-kernel/linux/linux-yocto-3.14/OE-qvga-logo.patch deleted file mode 100644 index d3c539f..0000000 --- a/recipes-kernel/linux/linux-yocto-3.14/OE-qvga-logo.patch +++ /dev/null @@ -1,232025 +0,0 @@ -From dd7c496334cc417b70efedf95c26fc9d4572b236 Mon Sep 17 00:00:00 2001 -From: Andrea Adami -Date: Sat, 5 Apr 2014 19:34:32 +0200 -Subject: [PATCH 337/337] Provide OpenEmbedded qvga logo - -Signed-off-by: Andrea Adami ---- - drivers/video/logo/logo_linux_clut224.ppm | 232006 ++++++++++++++++++++++++++- - 1 file changed, 230403 insertions(+), 1603 deletions(-) - -diff --git a/drivers/video/logo/logo_linux_clut224.ppm b/drivers/video/logo/logo_linux_clut224.ppm -index 3c14e43..9192b50 100644 ---- a/drivers/video/logo/logo_linux_clut224.ppm -+++ b/drivers/video/logo/logo_linux_clut224.ppm -@@ -1,1604 +1,230404 @@ - P3 --# Standard 224-color Linux logo --80 80 --255 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 6 6 6 10 10 10 10 10 10 -- 10 10 10 6 6 6 6 6 6 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 10 10 10 14 14 14 -- 22 22 22 26 26 26 30 30 30 34 34 34 -- 30 30 30 30 30 30 26 26 26 18 18 18 -- 14 14 14 10 10 10 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 26 26 26 42 42 42 -- 54 54 54 66 66 66 78 78 78 78 78 78 -- 78 78 78 74 74 74 66 66 66 54 54 54 -- 42 42 42 26 26 26 18 18 18 10 10 10 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 22 22 22 42 42 42 66 66 66 86 86 86 -- 66 66 66 38 38 38 38 38 38 22 22 22 -- 26 26 26 34 34 34 54 54 54 66 66 66 -- 86 86 86 70 70 70 46 46 46 26 26 26 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 26 26 26 -- 50 50 50 82 82 82 58 58 58 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 54 54 54 86 86 86 66 66 66 -- 38 38 38 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 22 22 22 50 50 50 -- 78 78 78 34 34 34 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 6 6 6 70 70 70 -- 78 78 78 46 46 46 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 42 42 42 82 82 82 -- 26 26 26 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 14 14 14 -- 46 46 46 34 34 34 6 6 6 2 2 6 -- 42 42 42 78 78 78 42 42 42 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 10 10 10 30 30 30 66 66 66 58 58 58 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 26 26 26 -- 86 86 86 101 101 101 46 46 46 10 10 10 -- 2 2 6 58 58 58 70 70 70 34 34 34 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 14 14 14 42 42 42 86 86 86 10 10 10 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 30 30 30 -- 94 94 94 94 94 94 58 58 58 26 26 26 -- 2 2 6 6 6 6 78 78 78 54 54 54 -- 22 22 22 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 22 22 22 62 62 62 62 62 62 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 26 26 26 -- 54 54 54 38 38 38 18 18 18 10 10 10 -- 2 2 6 2 2 6 34 34 34 82 82 82 -- 38 38 38 14 14 14 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 30 30 30 78 78 78 30 30 30 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 10 10 10 -- 10 10 10 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 78 78 78 -- 50 50 50 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 86 86 86 14 14 14 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 54 54 54 -- 66 66 66 26 26 26 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 82 82 82 2 2 6 2 2 6 -- 2 2 6 6 6 6 10 10 10 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 6 6 6 -- 14 14 14 10 10 10 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 18 18 18 -- 82 82 82 34 34 34 10 10 10 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 2 2 6 -- 6 6 6 6 6 6 22 22 22 34 34 34 -- 6 6 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 18 18 18 34 34 34 -- 10 10 10 50 50 50 22 22 22 2 2 6 -- 2 2 6 2 2 6 2 2 6 10 10 10 -- 86 86 86 42 42 42 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 2 2 6 -- 38 38 38 116 116 116 94 94 94 22 22 22 -- 22 22 22 2 2 6 2 2 6 2 2 6 -- 14 14 14 86 86 86 138 138 138 162 162 162 --154 154 154 38 38 38 26 26 26 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 86 86 86 46 46 46 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 14 14 14 --134 134 134 198 198 198 195 195 195 116 116 116 -- 10 10 10 2 2 6 2 2 6 6 6 6 --101 98 89 187 187 187 210 210 210 218 218 218 --214 214 214 134 134 134 14 14 14 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 86 86 86 50 50 50 18 18 18 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 54 54 54 --218 218 218 195 195 195 226 226 226 246 246 246 -- 58 58 58 2 2 6 2 2 6 30 30 30 --210 210 210 253 253 253 174 174 174 123 123 123 --221 221 221 234 234 234 74 74 74 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 70 70 70 58 58 58 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 82 82 82 2 2 6 106 106 106 --170 170 170 26 26 26 86 86 86 226 226 226 --123 123 123 10 10 10 14 14 14 46 46 46 --231 231 231 190 190 190 6 6 6 70 70 70 -- 90 90 90 238 238 238 158 158 158 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 70 70 70 58 58 58 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 86 86 86 6 6 6 116 116 116 --106 106 106 6 6 6 70 70 70 149 149 149 --128 128 128 18 18 18 38 38 38 54 54 54 --221 221 221 106 106 106 2 2 6 14 14 14 -- 46 46 46 190 190 190 198 198 198 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 74 74 74 62 62 62 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 0 -- 0 0 1 0 0 0 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 94 94 94 14 14 14 101 101 101 --128 128 128 2 2 6 18 18 18 116 116 116 --118 98 46 121 92 8 121 92 8 98 78 10 --162 162 162 106 106 106 2 2 6 2 2 6 -- 2 2 6 195 195 195 195 195 195 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 74 74 74 62 62 62 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 1 -- 0 0 1 0 0 0 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 90 90 90 14 14 14 58 58 58 --210 210 210 26 26 26 54 38 6 154 114 10 --226 170 11 236 186 11 225 175 15 184 144 12 --215 174 15 175 146 61 37 26 9 2 2 6 -- 70 70 70 246 246 246 138 138 138 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 70 70 70 66 66 66 26 26 26 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 86 86 86 14 14 14 10 10 10 --195 195 195 188 164 115 192 133 9 225 175 15 --239 182 13 234 190 10 232 195 16 232 200 30 --245 207 45 241 208 19 232 195 16 184 144 12 --218 194 134 211 206 186 42 42 42 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 50 50 50 74 74 74 30 30 30 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 34 34 34 86 86 86 14 14 14 2 2 6 --121 87 25 192 133 9 219 162 10 239 182 13 --236 186 11 232 195 16 241 208 19 244 214 54 --246 218 60 246 218 38 246 215 20 241 208 19 --241 208 19 226 184 13 121 87 25 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 50 50 50 82 82 82 34 34 34 10 10 10 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 34 34 34 82 82 82 30 30 30 61 42 6 --180 123 7 206 145 10 230 174 11 239 182 13 --234 190 10 238 202 15 241 208 19 246 218 74 --246 218 38 246 215 20 246 215 20 246 215 20 --226 184 13 215 174 15 184 144 12 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 26 26 26 94 94 94 42 42 42 14 14 14 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 50 50 50 104 69 6 --192 133 9 216 158 10 236 178 12 236 186 11 --232 195 16 241 208 19 244 214 54 245 215 43 --246 215 20 246 215 20 241 208 19 198 155 10 --200 144 11 216 158 10 156 118 10 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 90 90 90 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 46 46 46 22 22 22 --137 92 6 210 162 10 239 182 13 238 190 10 --238 202 15 241 208 19 246 215 20 246 215 20 --241 208 19 203 166 17 185 133 11 210 150 10 --216 158 10 210 150 10 102 78 10 2 2 6 -- 6 6 6 54 54 54 14 14 14 2 2 6 -- 2 2 6 62 62 62 74 74 74 30 30 30 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 34 34 34 78 78 78 50 50 50 6 6 6 -- 94 70 30 139 102 15 190 146 13 226 184 13 --232 200 30 232 195 16 215 174 15 190 146 13 --168 122 10 192 133 9 210 150 10 213 154 11 --202 150 34 182 157 106 101 98 89 2 2 6 -- 2 2 6 78 78 78 116 116 116 58 58 58 -- 2 2 6 22 22 22 90 90 90 46 46 46 -- 18 18 18 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 86 86 86 50 50 50 6 6 6 --128 128 128 174 154 114 156 107 11 168 122 10 --198 155 10 184 144 12 197 138 11 200 144 11 --206 145 10 206 145 10 197 138 11 188 164 115 --195 195 195 198 198 198 174 174 174 14 14 14 -- 2 2 6 22 22 22 116 116 116 116 116 116 -- 22 22 22 2 2 6 74 74 74 70 70 70 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 101 101 101 26 26 26 10 10 10 --138 138 138 190 190 190 174 154 114 156 107 11 --197 138 11 200 144 11 197 138 11 192 133 9 --180 123 7 190 142 34 190 178 144 187 187 187 --202 202 202 221 221 221 214 214 214 66 66 66 -- 2 2 6 2 2 6 50 50 50 62 62 62 -- 6 6 6 2 2 6 10 10 10 90 90 90 -- 50 50 50 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 34 34 34 -- 74 74 74 74 74 74 2 2 6 6 6 6 --144 144 144 198 198 198 190 190 190 178 166 146 --154 121 60 156 107 11 156 107 11 168 124 44 --174 154 114 187 187 187 190 190 190 210 210 210 --246 246 246 253 253 253 253 253 253 182 182 182 -- 6 6 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 62 62 62 -- 74 74 74 34 34 34 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 10 10 10 22 22 22 54 54 54 -- 94 94 94 18 18 18 2 2 6 46 46 46 --234 234 234 221 221 221 190 190 190 190 190 190 --190 190 190 187 187 187 187 187 187 190 190 190 --190 190 190 195 195 195 214 214 214 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 -- 82 82 82 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 14 14 14 -- 86 86 86 54 54 54 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 46 46 46 90 90 90 -- 46 46 46 18 18 18 6 6 6 182 182 182 --253 253 253 246 246 246 206 206 206 190 190 190 --190 190 190 190 190 190 190 190 190 190 190 190 --206 206 206 231 231 231 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --202 202 202 14 14 14 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 42 42 42 86 86 86 42 42 42 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 14 14 14 38 38 38 74 74 74 66 66 66 -- 2 2 6 6 6 6 90 90 90 250 250 250 --253 253 253 253 253 253 238 238 238 198 198 198 --190 190 190 190 190 190 195 195 195 221 221 221 --246 246 246 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 82 82 82 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 78 78 78 70 70 70 34 34 34 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 34 34 34 66 66 66 78 78 78 6 6 6 -- 2 2 6 18 18 18 218 218 218 253 253 253 --253 253 253 253 253 253 253 253 253 246 246 246 --226 226 226 231 231 231 246 246 246 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 178 178 178 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 18 18 18 90 90 90 62 62 62 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 26 26 26 -- 58 58 58 90 90 90 18 18 18 2 2 6 -- 2 2 6 110 110 110 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 231 231 231 18 18 18 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 18 18 18 94 94 94 -- 54 54 54 26 26 26 10 10 10 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 22 22 22 50 50 50 -- 90 90 90 26 26 26 2 2 6 2 2 6 -- 14 14 14 195 195 195 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 242 242 242 54 54 54 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 38 38 38 -- 86 86 86 50 50 50 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 38 38 38 82 82 82 -- 34 34 34 2 2 6 2 2 6 2 2 6 -- 42 42 42 195 195 195 246 246 246 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --242 242 242 242 242 242 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 250 250 250 246 246 246 238 238 238 --226 226 226 231 231 231 101 101 101 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 38 38 38 82 82 82 42 42 42 14 14 14 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 10 10 10 26 26 26 62 62 62 66 66 66 -- 2 2 6 2 2 6 2 2 6 6 6 6 -- 70 70 70 170 170 170 206 206 206 234 234 234 --246 246 246 250 250 250 250 250 250 238 238 238 --226 226 226 231 231 231 238 238 238 250 250 250 --250 250 250 250 250 250 246 246 246 231 231 231 --214 214 214 206 206 206 202 202 202 202 202 202 --198 198 198 202 202 202 182 182 182 18 18 18 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 62 62 62 66 66 66 30 30 30 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 14 14 14 42 42 42 82 82 82 18 18 18 -- 2 2 6 2 2 6 2 2 6 10 10 10 -- 94 94 94 182 182 182 218 218 218 242 242 242 --250 250 250 253 253 253 253 253 253 250 250 250 --234 234 234 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 246 246 246 --238 238 238 226 226 226 210 210 210 202 202 202 --195 195 195 195 195 195 210 210 210 158 158 158 -- 6 6 6 14 14 14 50 50 50 14 14 14 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 86 86 86 46 46 46 -- 18 18 18 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 22 22 22 54 54 54 70 70 70 2 2 6 -- 2 2 6 10 10 10 2 2 6 22 22 22 --166 166 166 231 231 231 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --242 242 242 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 246 246 246 --231 231 231 206 206 206 198 198 198 226 226 226 -- 94 94 94 2 2 6 6 6 6 38 38 38 -- 30 30 30 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 62 62 62 66 66 66 -- 26 26 26 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 74 74 74 50 50 50 2 2 6 -- 26 26 26 26 26 26 2 2 6 106 106 106 --238 238 238 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 246 246 246 218 218 218 202 202 202 --210 210 210 14 14 14 2 2 6 2 2 6 -- 30 30 30 22 22 22 2 2 6 2 2 6 -- 2 2 6 2 2 6 18 18 18 86 86 86 -- 42 42 42 14 14 14 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 90 90 90 22 22 22 2 2 6 -- 42 42 42 2 2 6 18 18 18 218 218 218 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 250 250 250 221 221 221 --218 218 218 101 101 101 2 2 6 14 14 14 -- 18 18 18 38 38 38 10 10 10 2 2 6 -- 2 2 6 2 2 6 2 2 6 78 78 78 -- 58 58 58 22 22 22 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 54 54 54 82 82 82 2 2 6 26 26 26 -- 22 22 22 2 2 6 123 123 123 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --238 238 238 198 198 198 6 6 6 38 38 38 -- 58 58 58 26 26 26 38 38 38 2 2 6 -- 2 2 6 2 2 6 2 2 6 46 46 46 -- 78 78 78 30 30 30 10 10 10 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 30 30 30 -- 74 74 74 58 58 58 2 2 6 42 42 42 -- 2 2 6 22 22 22 231 231 231 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 246 246 246 46 46 46 38 38 38 -- 42 42 42 14 14 14 38 38 38 14 14 14 -- 2 2 6 2 2 6 2 2 6 6 6 6 -- 86 86 86 46 46 46 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 14 14 14 42 42 42 -- 90 90 90 18 18 18 18 18 18 26 26 26 -- 2 2 6 116 116 116 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 250 250 250 238 238 238 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 94 94 94 6 6 6 -- 2 2 6 2 2 6 10 10 10 34 34 34 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 74 74 74 58 58 58 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 10 10 10 26 26 26 66 66 66 -- 82 82 82 2 2 6 38 38 38 6 6 6 -- 14 14 14 210 210 210 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 246 246 246 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 144 144 144 2 2 6 -- 2 2 6 2 2 6 2 2 6 46 46 46 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 42 42 42 74 74 74 30 30 30 10 10 10 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 42 42 42 90 90 90 -- 26 26 26 6 6 6 42 42 42 2 2 6 -- 74 74 74 250 250 250 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 242 242 242 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 182 182 182 2 2 6 -- 2 2 6 2 2 6 2 2 6 46 46 46 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 10 10 10 86 86 86 38 38 38 10 10 10 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 10 10 10 26 26 26 66 66 66 82 82 82 -- 2 2 6 22 22 22 18 18 18 2 2 6 --149 149 149 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 206 206 206 2 2 6 -- 2 2 6 2 2 6 2 2 6 38 38 38 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 86 86 86 46 46 46 14 14 14 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 18 18 18 46 46 46 86 86 86 18 18 18 -- 2 2 6 34 34 34 10 10 10 6 6 6 --210 210 210 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 221 221 221 6 6 6 -- 2 2 6 2 2 6 6 6 6 30 30 30 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 82 82 82 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 26 26 26 66 66 66 62 62 62 2 2 6 -- 2 2 6 38 38 38 10 10 10 26 26 26 --238 238 238 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 238 238 238 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 6 6 6 -- 2 2 6 2 2 6 10 10 10 30 30 30 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 58 58 58 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 78 78 78 6 6 6 2 2 6 -- 2 2 6 46 46 46 14 14 14 42 42 42 --246 246 246 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 10 10 10 -- 2 2 6 2 2 6 22 22 22 14 14 14 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 62 62 62 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 74 74 74 2 2 6 2 2 6 -- 14 14 14 70 70 70 34 34 34 62 62 62 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 14 14 14 -- 2 2 6 2 2 6 30 30 30 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 62 62 62 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 54 54 54 62 62 62 2 2 6 2 2 6 -- 2 2 6 30 30 30 46 46 46 70 70 70 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 226 226 226 10 10 10 -- 2 2 6 6 6 6 30 30 30 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 58 58 58 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 22 22 22 -- 58 58 58 62 62 62 2 2 6 2 2 6 -- 2 2 6 2 2 6 30 30 30 78 78 78 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 206 206 206 2 2 6 -- 22 22 22 34 34 34 18 14 6 22 22 22 -- 26 26 26 18 18 18 6 6 6 2 2 6 -- 2 2 6 82 82 82 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 26 26 26 -- 62 62 62 106 106 106 74 54 14 185 133 11 --210 162 10 121 92 8 6 6 6 62 62 62 --238 238 238 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 158 158 158 18 18 18 -- 14 14 14 2 2 6 2 2 6 2 2 6 -- 6 6 6 18 18 18 66 66 66 38 38 38 -- 6 6 6 94 94 94 50 50 50 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 10 10 10 10 10 10 18 18 18 38 38 38 -- 78 78 78 142 134 106 216 158 10 242 186 14 --246 190 14 246 190 14 156 118 10 10 10 10 -- 90 90 90 238 238 238 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 250 250 250 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 246 230 190 --238 204 91 238 204 91 181 142 44 37 26 9 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 38 38 38 46 46 46 -- 26 26 26 106 106 106 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 14 14 14 22 22 22 -- 30 30 30 38 38 38 50 50 50 70 70 70 --106 106 106 190 142 34 226 170 11 242 186 14 --246 190 14 246 190 14 246 190 14 154 114 10 -- 6 6 6 74 74 74 226 226 226 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 250 250 250 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 228 184 62 --241 196 14 241 208 19 232 195 16 38 30 10 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 30 30 30 26 26 26 --203 166 17 154 142 90 66 66 66 26 26 26 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 38 38 38 58 58 58 -- 78 78 78 86 86 86 101 101 101 123 123 123 --175 146 61 210 150 10 234 174 13 246 186 14 --246 190 14 246 190 14 246 190 14 238 190 10 --102 78 10 2 2 6 46 46 46 198 198 198 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 224 178 62 --242 186 14 241 196 14 210 166 10 22 18 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 6 6 6 121 92 8 --238 202 15 232 195 16 82 82 82 34 34 34 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 14 14 14 38 38 38 70 70 70 154 122 46 --190 142 34 200 144 11 197 138 11 197 138 11 --213 154 11 226 170 11 242 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --225 175 15 46 32 6 2 2 6 22 22 22 --158 158 158 250 250 250 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 250 250 250 242 242 242 224 178 62 --239 182 13 236 186 11 213 154 11 46 32 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 61 42 6 225 175 15 --238 190 10 236 186 11 112 100 78 42 42 42 -- 14 14 14 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 22 22 22 54 54 54 154 122 46 213 154 11 --226 170 11 230 174 11 226 170 11 226 170 11 --236 178 12 242 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --241 196 14 184 144 12 10 10 10 2 2 6 -- 6 6 6 116 116 116 242 242 242 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 231 231 231 198 198 198 214 170 54 --236 178 12 236 178 12 210 150 10 137 92 6 -- 18 14 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 70 47 6 200 144 11 236 178 12 --239 182 13 239 182 13 124 112 88 58 58 58 -- 22 22 22 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 70 70 70 180 133 36 226 170 11 --239 182 13 242 186 14 242 186 14 246 186 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 232 195 16 98 70 6 2 2 6 -- 2 2 6 2 2 6 66 66 66 221 221 221 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 206 206 206 198 198 198 214 166 58 --230 174 11 230 174 11 216 158 10 192 133 9 --163 110 8 116 81 8 102 78 10 116 81 8 --167 114 7 197 138 11 226 170 11 239 182 13 --242 186 14 242 186 14 162 146 94 78 78 78 -- 34 34 34 14 14 14 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 30 30 30 78 78 78 190 142 34 226 170 11 --239 182 13 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 241 196 14 203 166 17 22 18 6 -- 2 2 6 2 2 6 2 2 6 38 38 38 --218 218 218 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 206 206 206 198 198 198 202 162 69 --226 170 11 236 178 12 224 166 10 210 150 10 --200 144 11 197 138 11 192 133 9 197 138 11 --210 150 10 226 170 11 242 186 14 246 190 14 --246 190 14 246 186 14 225 175 15 124 112 88 -- 62 62 62 30 30 30 14 14 14 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 174 135 50 224 166 10 --239 182 13 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 241 196 14 139 102 15 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 78 78 78 250 250 250 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 214 214 214 198 198 198 190 150 46 --219 162 10 236 178 12 234 174 13 224 166 10 --216 158 10 213 154 11 213 154 11 216 158 10 --226 170 11 239 182 13 246 190 14 246 190 14 --246 190 14 246 190 14 242 186 14 206 162 42 --101 101 101 58 58 58 30 30 30 14 14 14 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 74 74 74 174 135 50 216 158 10 --236 178 12 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 241 196 14 226 184 13 -- 61 42 6 2 2 6 2 2 6 2 2 6 -- 22 22 22 238 238 238 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 226 226 226 187 187 187 180 133 36 --216 158 10 236 178 12 239 182 13 236 178 12 --230 174 11 226 170 11 226 170 11 230 174 11 --236 178 12 242 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 186 14 239 182 13 --206 162 42 106 106 106 66 66 66 34 34 34 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 26 26 26 70 70 70 163 133 67 213 154 11 --236 178 12 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 241 196 14 --190 146 13 18 14 6 2 2 6 2 2 6 -- 46 46 46 246 246 246 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 221 221 221 86 86 86 156 107 11 --216 158 10 236 178 12 242 186 14 246 186 14 --242 186 14 239 182 13 239 182 13 242 186 14 --242 186 14 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --242 186 14 225 175 15 142 122 72 66 66 66 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 26 26 26 70 70 70 163 133 67 210 150 10 --236 178 12 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --232 195 16 121 92 8 34 34 34 106 106 106 --221 221 221 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --242 242 242 82 82 82 18 14 6 163 110 8 --216 158 10 236 178 12 242 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 242 186 14 163 133 67 -- 46 46 46 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 163 133 67 210 150 10 --236 178 12 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --241 196 14 215 174 15 190 178 144 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 218 218 218 -- 58 58 58 2 2 6 22 18 6 167 114 7 --216 158 10 236 178 12 246 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 186 14 242 186 14 190 150 46 -- 54 54 54 22 22 22 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 38 38 38 86 86 86 180 133 36 213 154 11 --236 178 12 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 232 195 16 190 146 13 214 214 214 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 250 250 250 170 170 170 26 26 26 -- 2 2 6 2 2 6 37 26 9 163 110 8 --219 162 10 239 182 13 246 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 186 14 236 178 12 224 166 10 142 122 72 -- 46 46 46 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 109 106 95 192 133 9 224 166 10 --242 186 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --242 186 14 226 184 13 210 162 10 142 110 46 --226 226 226 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --198 198 198 66 66 66 2 2 6 2 2 6 -- 2 2 6 2 2 6 50 34 6 156 107 11 --219 162 10 239 182 13 246 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 242 186 14 --234 174 13 213 154 11 154 122 46 66 66 66 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 22 22 22 -- 58 58 58 154 121 60 206 145 10 234 174 13 --242 186 14 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 186 14 236 178 12 210 162 10 163 110 8 -- 61 42 6 138 138 138 218 218 218 250 250 250 --253 253 253 253 253 253 253 253 253 250 250 250 --242 242 242 210 210 210 144 144 144 66 66 66 -- 6 6 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 61 42 6 163 110 8 --216 158 10 236 178 12 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 239 182 13 230 174 11 216 158 10 --190 142 34 124 112 88 70 70 70 38 38 38 -- 18 18 18 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 22 22 22 -- 62 62 62 168 124 44 206 145 10 224 166 10 --236 178 12 239 182 13 242 186 14 242 186 14 --246 186 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 236 178 12 216 158 10 175 118 6 -- 80 54 7 2 2 6 6 6 6 30 30 30 -- 54 54 54 62 62 62 50 50 50 38 38 38 -- 14 14 14 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 80 54 7 167 114 7 --213 154 11 236 178 12 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 242 186 14 239 182 13 239 182 13 --230 174 11 210 150 10 174 135 50 124 112 88 -- 82 82 82 54 54 54 34 34 34 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 158 118 36 192 133 9 200 144 11 --216 158 10 219 162 10 224 166 10 226 170 11 --230 174 11 236 178 12 239 182 13 239 182 13 --242 186 14 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 186 14 230 174 11 210 150 10 163 110 8 --104 69 6 10 10 10 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 91 60 6 167 114 7 --206 145 10 230 174 11 242 186 14 246 190 14 --246 190 14 246 190 14 246 186 14 242 186 14 --239 182 13 230 174 11 224 166 10 213 154 11 --180 133 36 124 112 88 86 86 86 58 58 58 -- 38 38 38 22 22 22 10 10 10 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 34 34 34 70 70 70 138 110 50 158 118 36 --167 114 7 180 123 7 192 133 9 197 138 11 --200 144 11 206 145 10 213 154 11 219 162 10 --224 166 10 230 174 11 239 182 13 242 186 14 --246 186 14 246 186 14 246 186 14 246 186 14 --239 182 13 216 158 10 185 133 11 152 99 6 --104 69 6 18 14 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 80 54 7 152 99 6 --192 133 9 219 162 10 236 178 12 239 182 13 --246 186 14 242 186 14 239 182 13 236 178 12 --224 166 10 206 145 10 192 133 9 154 121 60 -- 94 94 94 62 62 62 42 42 42 22 22 22 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 18 18 18 34 34 34 58 58 58 78 78 78 --101 98 89 124 112 88 142 110 46 156 107 11 --163 110 8 167 114 7 175 118 6 180 123 7 --185 133 11 197 138 11 210 150 10 219 162 10 --226 170 11 236 178 12 236 178 12 234 174 13 --219 162 10 197 138 11 163 110 8 130 83 6 -- 91 60 6 10 10 10 2 2 6 2 2 6 -- 18 18 18 38 38 38 38 38 38 38 38 38 -- 38 38 38 38 38 38 38 38 38 38 38 38 -- 38 38 38 38 38 38 26 26 26 2 2 6 -- 2 2 6 6 6 6 70 47 6 137 92 6 --175 118 6 200 144 11 219 162 10 230 174 11 --234 174 13 230 174 11 219 162 10 210 150 10 --192 133 9 163 110 8 124 112 88 82 82 82 -- 50 50 50 30 30 30 14 14 14 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 22 22 22 34 34 34 -- 42 42 42 58 58 58 74 74 74 86 86 86 --101 98 89 122 102 70 130 98 46 121 87 25 --137 92 6 152 99 6 163 110 8 180 123 7 --185 133 11 197 138 11 206 145 10 200 144 11 --180 123 7 156 107 11 130 83 6 104 69 6 -- 50 34 6 54 54 54 110 110 110 101 98 89 -- 86 86 86 82 82 82 78 78 78 78 78 78 -- 78 78 78 78 78 78 78 78 78 78 78 78 -- 78 78 78 82 82 82 86 86 86 94 94 94 --106 106 106 101 101 101 86 66 34 124 80 6 --156 107 11 180 123 7 192 133 9 200 144 11 --206 145 10 200 144 11 192 133 9 175 118 6 --139 102 15 109 106 95 70 70 70 42 42 42 -- 22 22 22 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 10 10 10 -- 14 14 14 22 22 22 30 30 30 38 38 38 -- 50 50 50 62 62 62 74 74 74 90 90 90 --101 98 89 112 100 78 121 87 25 124 80 6 --137 92 6 152 99 6 152 99 6 152 99 6 --138 86 6 124 80 6 98 70 6 86 66 30 --101 98 89 82 82 82 58 58 58 46 46 46 -- 38 38 38 34 34 34 34 34 34 34 34 34 -- 34 34 34 34 34 34 34 34 34 34 34 34 -- 34 34 34 34 34 34 38 38 38 42 42 42 -- 54 54 54 82 82 82 94 86 76 91 60 6 --134 86 6 156 107 11 167 114 7 175 118 6 --175 118 6 167 114 7 152 99 6 121 87 25 --101 98 89 62 62 62 34 34 34 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 6 6 6 10 10 10 -- 18 18 18 22 22 22 30 30 30 42 42 42 -- 50 50 50 66 66 66 86 86 86 101 98 89 --106 86 58 98 70 6 104 69 6 104 69 6 --104 69 6 91 60 6 82 62 34 90 90 90 -- 62 62 62 38 38 38 22 22 22 14 14 14 -- 10 10 10 10 10 10 10 10 10 10 10 10 -- 10 10 10 10 10 10 6 6 6 10 10 10 -- 10 10 10 10 10 10 10 10 10 14 14 14 -- 22 22 22 42 42 42 70 70 70 89 81 66 -- 80 54 7 104 69 6 124 80 6 137 92 6 --134 86 6 116 81 8 100 82 52 86 86 86 -- 58 58 58 30 30 30 14 14 14 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 10 10 10 14 14 14 -- 18 18 18 26 26 26 38 38 38 54 54 54 -- 70 70 70 86 86 86 94 86 76 89 81 66 -- 89 81 66 86 86 86 74 74 74 50 50 50 -- 30 30 30 14 14 14 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 34 34 34 58 58 58 -- 82 82 82 89 81 66 89 81 66 89 81 66 -- 94 86 66 94 86 76 74 74 74 50 50 50 -- 26 26 26 14 14 14 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 6 6 6 14 14 14 18 18 18 -- 30 30 30 38 38 38 46 46 46 54 54 54 -- 50 50 50 42 42 42 30 30 30 18 18 18 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 14 14 14 26 26 26 -- 38 38 38 50 50 50 58 58 58 58 58 58 -- 54 54 54 42 42 42 30 30 30 18 18 18 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 6 6 6 10 10 10 14 14 14 18 18 18 -- 18 18 18 14 14 14 10 10 10 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 14 14 14 18 18 18 22 22 22 22 22 22 -- 18 18 18 14 14 14 10 10 10 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -+# CREATOR: GIMP PNM Filter Version 1.1 -+240 320 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+240 -+246 -+248 -+235 -+240 -+243 -+231 -+237 -+239 -+231 -+237 -+239 -+230 -+236 -+238 -+231 -+237 -+239 -+233 -+238 -+240 -+240 -+246 -+248 -+249 -+251 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+212 -+217 -+219 -+191 -+196 -+198 -+170 -+178 -+186 -+151 -+159 -+167 -+125 -+144 -+155 -+112 -+131 -+142 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+110 -+129 -+140 -+126 -+141 -+147 -+142 -+158 -+164 -+167 -+175 -+183 -+188 -+193 -+195 -+208 -+214 -+216 -+234 -+239 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+248 -+244 -+208 -+214 -+216 -+173 -+181 -+189 -+136 -+151 -+157 -+106 -+125 -+136 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+103 -+121 -+132 -+132 -+147 -+153 -+168 -+176 -+184 -+204 -+209 -+212 -+237 -+242 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+215 -+220 -+223 -+171 -+179 -+187 -+120 -+139 -+151 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+162 -+170 -+178 -+208 -+214 -+216 -+245 -+250 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+207 -+212 -+215 -+149 -+165 -+171 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+137 -+152 -+158 -+198 -+204 -+206 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+158 -+166 -+174 -+102 -+120 -+131 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+149 -+157 -+165 -+208 -+214 -+216 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+249 -+246 -+190 -+195 -+197 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+175 -+183 -+191 -+237 -+242 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+170 -+178 -+186 -+102 -+120 -+131 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+152 -+168 -+174 -+226 -+231 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+234 -+239 -+242 -+158 -+166 -+174 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+142 -+158 -+164 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+236 -+241 -+244 -+166 -+174 -+182 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+151 -+159 -+167 -+230 -+236 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+181 -+190 -+198 -+102 -+120 -+131 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+168 -+176 -+184 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+214 -+216 -+112 -+131 -+142 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+194 -+199 -+202 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+153 -+161 -+169 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+132 -+147 -+153 -+229 -+234 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+242 -+247 -+249 -+150 -+166 -+172 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+134 -+149 -+155 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+226 -+228 -+111 -+130 -+141 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+103 -+121 -+132 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+199 -+202 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+172 -+180 -+188 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+136 -+151 -+157 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+133 -+148 -+154 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+231 -+237 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+237 -+239 -+116 -+135 -+146 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+106 -+125 -+136 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+119 -+138 -+150 -+141 -+156 -+163 -+158 -+166 -+174 -+166 -+174 -+182 -+172 -+180 -+188 -+180 -+188 -+197 -+192 -+197 -+200 -+192 -+197 -+200 -+180 -+188 -+197 -+173 -+181 -+189 -+168 -+176 -+184 -+155 -+170 -+177 -+146 -+161 -+167 -+126 -+141 -+147 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+228 -+230 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+106 -+125 -+136 -+152 -+160 -+168 -+184 -+192 -+201 -+210 -+216 -+218 -+233 -+238 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+236 -+241 -+244 -+214 -+219 -+221 -+192 -+197 -+200 -+158 -+166 -+174 -+112 -+131 -+142 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+206 -+211 -+214 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+146 -+161 -+167 -+190 -+195 -+197 -+226 -+231 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+234 -+239 -+242 -+196 -+201 -+204 -+155 -+163 -+171 -+106 -+125 -+136 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+203 -+208 -+210 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+225 -+230 -+233 -+104 -+122 -+133 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+137 -+152 -+158 -+199 -+205 -+207 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+208 -+214 -+216 -+153 -+161 -+169 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+182 -+191 -+199 -+236 -+241 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+248 -+244 -+195 -+200 -+203 -+127 -+142 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+213 -+218 -+220 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+237 -+242 -+245 -+108 -+127 -+138 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+199 -+205 -+207 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+132 -+147 -+153 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+127 -+142 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+126 -+141 -+147 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+217 -+222 -+225 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+140 -+155 -+162 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+113 -+132 -+143 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+162 -+170 -+178 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+177 -+185 -+194 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+157 -+165 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+207 -+212 -+215 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+119 -+138 -+150 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+237 -+239 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+162 -+170 -+178 -+249 -+251 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+178 -+237 -+248 -+144 -+227 -+241 -+109 -+218 -+241 -+71 -+207 -+235 -+44 -+201 -+234 -+40 -+199 -+232 -+35 -+196 -+230 -+0 -+193 -+232 -+0 -+193 -+232 -+0 -+196 -+234 -+40 -+199 -+232 -+44 -+201 -+234 -+66 -+204 -+231 -+105 -+214 -+238 -+135 -+225 -+244 -+176 -+235 -+246 -+219 -+244 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+182 -+191 -+199 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+215 -+220 -+223 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+125 -+144 -+155 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+203 -+208 -+210 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+155 -+229 -+244 -+77 -+211 -+239 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+74 -+209 -+237 -+137 -+226 -+245 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+223 -+226 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+120 -+139 -+151 -+231 -+237 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+134 -+224 -+243 -+42 -+200 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+119 -+219 -+238 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+140 -+155 -+162 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+151 -+159 -+167 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+136 -+151 -+157 -+244 -+249 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+174 -+232 -+244 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+155 -+229 -+244 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+119 -+138 -+150 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+155 -+229 -+244 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+134 -+224 -+243 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+135 -+225 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+230 -+236 -+238 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+49 -+203 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+178 -+237 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+141 -+156 -+163 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+155 -+170 -+177 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+109 -+218 -+241 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+188 -+193 -+195 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+116 -+135 -+146 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+213 -+218 -+220 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+140 -+155 -+162 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+193 -+238 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+188 -+193 -+195 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+118 -+137 -+149 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+245 -+250 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+131 -+220 -+240 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+73 -+208 -+236 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+131 -+146 -+152 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+172 -+180 -+188 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+115 -+134 -+145 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+49 -+203 -+236 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+239 -+245 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+181 -+190 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+170 -+178 -+186 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+140 -+155 -+162 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+171 -+179 -+187 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+102 -+120 -+131 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+126 -+141 -+147 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+195 -+200 -+203 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+229 -+234 -+237 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+126 -+145 -+157 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+121 -+222 -+240 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+188 -+237 -+251 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+144 -+227 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+168 -+176 -+184 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+232 -+249 -+255 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+195 -+200 -+203 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+234 -+239 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+210 -+213 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+239 -+245 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+44 -+201 -+234 -+74 -+209 -+237 -+76 -+210 -+238 -+76 -+210 -+238 -+76 -+210 -+238 -+66 -+204 -+231 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+113 -+132 -+143 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+152 -+160 -+168 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+167 -+175 -+183 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+110 -+219 -+242 -+187 -+236 -+249 -+240 -+253 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+195 -+241 -+248 -+134 -+224 -+243 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+195 -+200 -+203 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+118 -+137 -+149 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+109 -+218 -+241 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+110 -+129 -+140 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+208 -+210 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+155 -+170 -+177 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+134 -+224 -+243 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+190 -+195 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+150 -+166 -+172 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+231 -+237 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+127 -+142 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+126 -+137 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+74 -+209 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+175 -+233 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+166 -+174 -+182 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+195 -+200 -+203 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+180 -+188 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+231 -+248 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+116 -+135 -+146 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+141 -+156 -+163 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+248 -+254 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+185 -+194 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+225 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+229 -+234 -+237 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+203 -+240 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+113 -+132 -+143 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+204 -+209 -+212 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+173 -+181 -+189 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+172 -+180 -+188 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+173 -+181 -+189 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+121 -+222 -+240 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+47 -+202 -+235 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+74 -+209 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+141 -+156 -+163 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+140 -+155 -+162 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+214 -+219 -+221 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+202 -+239 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+0 -+190 -+229 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+111 -+130 -+141 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+111 -+130 -+141 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+236 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+202 -+239 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+132 -+221 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+152 -+160 -+168 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+226 -+231 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+157 -+165 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+214 -+219 -+221 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+171 -+179 -+187 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+137 -+226 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+190 -+195 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+228 -+230 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+171 -+179 -+187 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+188 -+193 -+195 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+226 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+194 -+239 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+244 -+249 -+252 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+92 -+214 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+142 -+158 -+164 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+246 -+248 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+178 -+237 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+144 -+227 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+74 -+209 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+137 -+226 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+132 -+147 -+153 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+150 -+166 -+172 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+178 -+237 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+232 -+249 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+121 -+140 -+152 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+161 -+169 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+128 -+143 -+149 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+146 -+161 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+106 -+125 -+136 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+144 -+227 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+141 -+156 -+163 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+146 -+161 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+225 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+161 -+169 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+226 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+208 -+245 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+145 -+228 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+105 -+214 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+193 -+238 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+138 -+150 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+166 -+174 -+182 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+176 -+235 -+246 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+155 -+229 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+202 -+239 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+132 -+221 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+111 -+130 -+141 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+237 -+242 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+204 -+241 -+250 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+187 -+236 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+182 -+191 -+199 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+224 -+229 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+92 -+214 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+150 -+166 -+172 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+203 -+208 -+210 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+172 -+180 -+188 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+215 -+220 -+223 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+110 -+219 -+242 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+211 -+214 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+190 -+195 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+230 -+236 -+238 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+165 -+171 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+71 -+207 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+90 -+213 -+236 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+71 -+207 -+235 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+51 -+204 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+180 -+188 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+122 -+141 -+153 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+177 -+236 -+247 -+177 -+236 -+247 -+203 -+240 -+249 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+152 -+168 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+220 -+226 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+248 -+254 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+177 -+236 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+125 -+144 -+155 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+246 -+248 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+169 -+177 -+185 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+51 -+204 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+238 -+246 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+178 -+237 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+144 -+227 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+228 -+230 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+231 -+248 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+127 -+142 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+217 -+222 -+225 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+242 -+247 -+249 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+230 -+236 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+174 -+232 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+198 -+201 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+92 -+214 -+237 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+144 -+227 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+132 -+147 -+153 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+152 -+160 -+168 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+217 -+222 -+225 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+238 -+246 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+191 -+196 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+99 -+117 -+128 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+146 -+161 -+167 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+220 -+245 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+185 -+194 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+142 -+158 -+164 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+236 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+155 -+229 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+178 -+237 -+248 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+115 -+134 -+145 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+49 -+203 -+236 -+195 -+241 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+74 -+209 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+210 -+213 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+242 -+247 -+249 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+178 -+237 -+248 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+76 -+210 -+238 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+174 -+232 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+122 -+141 -+153 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+150 -+156 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+184 -+192 -+201 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+109 -+218 -+241 -+187 -+236 -+249 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+194 -+239 -+247 -+121 -+222 -+240 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+198 -+201 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+44 -+201 -+234 -+77 -+211 -+239 -+121 -+222 -+240 -+137 -+226 -+245 -+155 -+229 -+244 -+155 -+229 -+244 -+144 -+227 -+241 -+132 -+221 -+241 -+90 -+213 -+236 -+49 -+203 -+236 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+133 -+148 -+154 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+249 -+246 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+188 -+193 -+195 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+213 -+218 -+220 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+102 -+120 -+131 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+145 -+228 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+116 -+135 -+146 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+127 -+142 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+150 -+166 -+172 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+76 -+210 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+181 -+190 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+194 -+199 -+202 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+217 -+222 -+225 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+244 -+249 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+199 -+202 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+119 -+138 -+150 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+232 -+249 -+255 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+151 -+159 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+108 -+127 -+138 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+170 -+178 -+186 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+248 -+253 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+184 -+192 -+201 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+187 -+236 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+104 -+122 -+133 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+236 -+241 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+248 -+253 -+42 -+200 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+120 -+139 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+230 -+236 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+185 -+194 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+162 -+170 -+178 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+233 -+238 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+177 -+185 -+194 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+168 -+231 -+249 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+134 -+224 -+243 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+211 -+214 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+121 -+140 -+152 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+193 -+198 -+201 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+246 -+251 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+202 -+239 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+99 -+117 -+128 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+246 -+248 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+223 -+226 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+153 -+226 -+242 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+119 -+219 -+238 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+158 -+166 -+174 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+199 -+205 -+207 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+105 -+214 -+238 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+90 -+213 -+236 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+71 -+207 -+235 -+194 -+239 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+109 -+218 -+241 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+77 -+211 -+239 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+159 -+232 -+247 -+73 -+208 -+236 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+66 -+204 -+231 -+153 -+226 -+242 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+157 -+230 -+245 -+90 -+213 -+236 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+76 -+210 -+238 -+145 -+228 -+242 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+159 -+232 -+247 -+119 -+219 -+238 -+77 -+211 -+239 -+44 -+201 -+234 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+74 -+209 -+237 -+110 -+219 -+242 -+155 -+229 -+244 -+208 -+245 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+238 -+251 -+252 -+221 -+246 -+251 -+206 -+243 -+252 -+205 -+242 -+251 -+221 -+246 -+251 -+232 -+249 -+255 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+0 -+190 -+229 -+25 -+189 -+229 -+131 -+220 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+71 -+207 -+235 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+246 -+251 -+40 -+199 -+232 -+21 -+188 -+228 -+66 -+204 -+231 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+47 -+202 -+235 -+21 -+188 -+228 -+42 -+200 -+233 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+176 -+235 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+157 -+230 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+226 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+121 -+222 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+137 -+152 -+158 -+106 -+125 -+136 -+99 -+117 -+128 -+110 -+129 -+140 -+155 -+163 -+171 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+107 -+126 -+137 -+146 -+161 -+167 -+223 -+228 -+230 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+146 -+161 -+167 -+108 -+127 -+138 -+99 -+117 -+128 -+107 -+126 -+137 -+146 -+161 -+167 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+105 -+123 -+134 -+137 -+152 -+158 -+213 -+218 -+220 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+92 -+214 -+237 -+37 -+197 -+231 -+0 -+190 -+229 -+0 -+194 -+233 -+71 -+207 -+235 -+159 -+232 -+247 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+0 -+196 -+234 -+77 -+211 -+239 -+205 -+242 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+66 -+204 -+231 -+155 -+229 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+239 -+247 -+77 -+211 -+239 -+35 -+196 -+230 -+0 -+190 -+229 -+0 -+196 -+234 -+74 -+209 -+237 -+176 -+235 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+77 -+211 -+239 -+35 -+196 -+230 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+211 -+244 -+247 -+92 -+214 -+237 -+37 -+197 -+231 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+109 -+218 -+241 -+40 -+199 -+232 -+0 -+190 -+229 -+0 -+194 -+233 -+66 -+204 -+231 -+155 -+229 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+109 -+218 -+241 -+40 -+199 -+232 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+167 -+175 -+183 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+215 -+220 -+223 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+195 -+200 -+203 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+244 -+249 -+252 -+146 -+161 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+146 -+161 -+167 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+172 -+180 -+188 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+157 -+230 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+90 -+213 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+71 -+207 -+235 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+174 -+232 -+244 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+239 -+247 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+244 -+249 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+162 -+170 -+178 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+213 -+218 -+220 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+196 -+201 -+204 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+76 -+210 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+51 -+204 -+237 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+231 -+248 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+169 -+177 -+185 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+128 -+143 -+149 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+191 -+196 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+106 -+125 -+136 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+187 -+236 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+49 -+203 -+236 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+218 -+243 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+131 -+220 -+240 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+99 -+117 -+128 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+207 -+212 -+215 -+227 -+232 -+235 -+190 -+195 -+197 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+136 -+151 -+157 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+121 -+140 -+152 -+231 -+237 -+239 -+231 -+237 -+239 -+231 -+237 -+239 -+230 -+236 -+238 -+180 -+188 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+239 -+245 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+112 -+131 -+142 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+199 -+205 -+207 -+227 -+232 -+235 -+198 -+204 -+206 -+107 -+126 -+137 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+112 -+131 -+142 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+231 -+237 -+239 -+231 -+237 -+239 -+231 -+237 -+239 -+231 -+237 -+239 -+196 -+201 -+204 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+220 -+226 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+155 -+229 -+244 -+219 -+244 -+249 -+176 -+235 -+246 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+247 -+253 -+255 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+194 -+239 -+247 -+221 -+246 -+251 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+194 -+239 -+247 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+194 -+239 -+247 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+158 -+231 -+246 -+218 -+243 -+248 -+174 -+232 -+244 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+248 -+254 -+255 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+220 -+245 -+250 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+134 -+224 -+243 -+211 -+244 -+247 -+187 -+236 -+249 -+49 -+203 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+218 -+243 -+248 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+250 -+252 -+249 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+104 -+122 -+133 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+231 -+237 -+239 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+231 -+237 -+239 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+126 -+141 -+147 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+203 -+208 -+210 -+254 -+255 -+252 -+248 -+254 -+255 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+174 -+232 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+211 -+244 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+211 -+244 -+247 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+205 -+242 -+251 -+254 -+255 -+252 -+221 -+246 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+246 -+251 -+254 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+253 -+254 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+155 -+229 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+211 -+244 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+195 -+200 -+203 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+132 -+147 -+153 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+236 -+241 -+244 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+214 -+219 -+221 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+108 -+127 -+138 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+215 -+220 -+223 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+223 -+248 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+51 -+204 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+205 -+242 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+42 -+200 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+177 -+236 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+131 -+220 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+111 -+130 -+141 -+111 -+130 -+141 -+111 -+130 -+141 -+111 -+130 -+141 -+111 -+130 -+141 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+192 -+197 -+200 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+112 -+131 -+142 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+246 -+248 -+244 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+232 -+249 -+255 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+238 -+251 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+193 -+238 -+246 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+204 -+209 -+212 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+246 -+251 -+254 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+126 -+137 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+208 -+214 -+216 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+116 -+135 -+146 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+195 -+241 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+246 -+251 -+254 -+254 -+255 -+252 -+231 -+237 -+239 -+119 -+138 -+150 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+126 -+141 -+147 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+233 -+238 -+240 -+254 -+255 -+252 -+221 -+227 -+229 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+132 -+221 -+241 -+254 -+255 -+252 -+220 -+245 -+250 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+175 -+233 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+155 -+229 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+112 -+131 -+142 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+191 -+196 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+118 -+137 -+149 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+119 -+138 -+150 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+131 -+146 -+152 -+196 -+201 -+204 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+254 -+255 -+252 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+49 -+203 -+236 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+66 -+204 -+231 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+49 -+203 -+236 -+119 -+219 -+238 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+127 -+142 -+148 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+184 -+192 -+201 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+171 -+179 -+187 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+234 -+239 -+242 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+193 -+238 -+246 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+168 -+231 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+187 -+236 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+213 -+218 -+220 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+120 -+139 -+151 -+236 -+241 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+157 -+165 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+126 -+145 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+219 -+224 -+227 -+254 -+255 -+252 -+226 -+231 -+234 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+116 -+135 -+146 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+247 -+253 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+219 -+244 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+187 -+236 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+225 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+153 -+161 -+169 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+175 -+183 -+191 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+103 -+121 -+132 -+177 -+185 -+194 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+170 -+178 -+186 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+120 -+139 -+151 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+125 -+144 -+155 -+93 -+111 -+122 -+94 -+112 -+123 -+182 -+191 -+199 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+95 -+113 -+124 -+93 -+111 -+122 -+113 -+132 -+143 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+137 -+226 -+245 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+76 -+210 -+238 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+132 -+221 -+241 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+137 -+226 -+245 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+219 -+244 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+233 -+245 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+221 -+227 -+229 -+213 -+218 -+220 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+221 -+227 -+229 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+220 -+226 -+228 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+217 -+222 -+225 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+218 -+223 -+226 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+216 -+221 -+224 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+204 -+241 -+250 -+205 -+242 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+203 -+240 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+202 -+239 -+248 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+204 -+241 -+250 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+193 -+238 -+246 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+193 -+238 -+246 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+188 -+237 -+251 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+188 -+237 -+251 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+210 -+213 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+194 -+199 -+202 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+245 -+247 -+203 -+208 -+210 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 --- -1.8.1.5 - diff --git a/recipes-kernel/linux/linux-yocto-3.14/OE-vga-logo.patch b/recipes-kernel/linux/linux-yocto-3.14/OE-vga-logo.patch deleted file mode 100644 index 3d6213a..0000000 --- a/recipes-kernel/linux/linux-yocto-3.14/OE-vga-logo.patch +++ /dev/null @@ -1,923225 +0,0 @@ -From 96d3f3f7f92837eba04b94bd097f841df545ecdc Mon Sep 17 00:00:00 2001 -From: Andrea Adami -Date: Sat, 5 Apr 2014 19:32:35 +0200 -Subject: [PATCH 337/337] Provide OpenEmbedded vga logo - -Signed-off-by: Andrea Adami ---- - drivers/video/logo/logo_linux_clut224.ppm | 923206 ++++++++++++++++++++++++++- - 1 file changed, 921603 insertions(+), 1603 deletions(-) - -diff --git a/drivers/video/logo/logo_linux_clut224.ppm b/drivers/video/logo/logo_linux_clut224.ppm -index 3c14e43..5b35c20 100644 ---- a/drivers/video/logo/logo_linux_clut224.ppm -+++ b/drivers/video/logo/logo_linux_clut224.ppm -@@ -1,1604 +1,921604 @@ - P3 --# Standard 224-color Linux logo --80 80 --255 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 6 6 6 10 10 10 10 10 10 -- 10 10 10 6 6 6 6 6 6 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 10 10 10 14 14 14 -- 22 22 22 26 26 26 30 30 30 34 34 34 -- 30 30 30 30 30 30 26 26 26 18 18 18 -- 14 14 14 10 10 10 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 26 26 26 42 42 42 -- 54 54 54 66 66 66 78 78 78 78 78 78 -- 78 78 78 74 74 74 66 66 66 54 54 54 -- 42 42 42 26 26 26 18 18 18 10 10 10 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 22 22 22 42 42 42 66 66 66 86 86 86 -- 66 66 66 38 38 38 38 38 38 22 22 22 -- 26 26 26 34 34 34 54 54 54 66 66 66 -- 86 86 86 70 70 70 46 46 46 26 26 26 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 26 26 26 -- 50 50 50 82 82 82 58 58 58 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 54 54 54 86 86 86 66 66 66 -- 38 38 38 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 22 22 22 50 50 50 -- 78 78 78 34 34 34 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 6 6 6 70 70 70 -- 78 78 78 46 46 46 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 42 42 42 82 82 82 -- 26 26 26 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 14 14 14 -- 46 46 46 34 34 34 6 6 6 2 2 6 -- 42 42 42 78 78 78 42 42 42 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 10 10 10 30 30 30 66 66 66 58 58 58 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 26 26 26 -- 86 86 86 101 101 101 46 46 46 10 10 10 -- 2 2 6 58 58 58 70 70 70 34 34 34 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 14 14 14 42 42 42 86 86 86 10 10 10 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 30 30 30 -- 94 94 94 94 94 94 58 58 58 26 26 26 -- 2 2 6 6 6 6 78 78 78 54 54 54 -- 22 22 22 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 22 22 22 62 62 62 62 62 62 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 26 26 26 -- 54 54 54 38 38 38 18 18 18 10 10 10 -- 2 2 6 2 2 6 34 34 34 82 82 82 -- 38 38 38 14 14 14 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 30 30 30 78 78 78 30 30 30 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 10 10 10 -- 10 10 10 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 78 78 78 -- 50 50 50 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 86 86 86 14 14 14 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 54 54 54 -- 66 66 66 26 26 26 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 82 82 82 2 2 6 2 2 6 -- 2 2 6 6 6 6 10 10 10 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 6 6 6 -- 14 14 14 10 10 10 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 18 18 18 -- 82 82 82 34 34 34 10 10 10 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 2 2 6 -- 6 6 6 6 6 6 22 22 22 34 34 34 -- 6 6 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 18 18 18 34 34 34 -- 10 10 10 50 50 50 22 22 22 2 2 6 -- 2 2 6 2 2 6 2 2 6 10 10 10 -- 86 86 86 42 42 42 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 2 2 6 -- 38 38 38 116 116 116 94 94 94 22 22 22 -- 22 22 22 2 2 6 2 2 6 2 2 6 -- 14 14 14 86 86 86 138 138 138 162 162 162 --154 154 154 38 38 38 26 26 26 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 86 86 86 46 46 46 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 14 14 14 --134 134 134 198 198 198 195 195 195 116 116 116 -- 10 10 10 2 2 6 2 2 6 6 6 6 --101 98 89 187 187 187 210 210 210 218 218 218 --214 214 214 134 134 134 14 14 14 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 86 86 86 50 50 50 18 18 18 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 86 86 86 2 2 6 54 54 54 --218 218 218 195 195 195 226 226 226 246 246 246 -- 58 58 58 2 2 6 2 2 6 30 30 30 --210 210 210 253 253 253 174 174 174 123 123 123 --221 221 221 234 234 234 74 74 74 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 70 70 70 58 58 58 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 46 46 46 82 82 82 2 2 6 106 106 106 --170 170 170 26 26 26 86 86 86 226 226 226 --123 123 123 10 10 10 14 14 14 46 46 46 --231 231 231 190 190 190 6 6 6 70 70 70 -- 90 90 90 238 238 238 158 158 158 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 70 70 70 58 58 58 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 0 -- 0 0 1 0 0 1 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 86 86 86 6 6 6 116 116 116 --106 106 106 6 6 6 70 70 70 149 149 149 --128 128 128 18 18 18 38 38 38 54 54 54 --221 221 221 106 106 106 2 2 6 14 14 14 -- 46 46 46 190 190 190 198 198 198 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 74 74 74 62 62 62 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 0 -- 0 0 1 0 0 0 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 94 94 94 14 14 14 101 101 101 --128 128 128 2 2 6 18 18 18 116 116 116 --118 98 46 121 92 8 121 92 8 98 78 10 --162 162 162 106 106 106 2 2 6 2 2 6 -- 2 2 6 195 195 195 195 195 195 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 74 74 74 62 62 62 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 1 0 0 1 -- 0 0 1 0 0 0 0 0 1 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 90 90 90 14 14 14 58 58 58 --210 210 210 26 26 26 54 38 6 154 114 10 --226 170 11 236 186 11 225 175 15 184 144 12 --215 174 15 175 146 61 37 26 9 2 2 6 -- 70 70 70 246 246 246 138 138 138 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 70 70 70 66 66 66 26 26 26 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 86 86 86 14 14 14 10 10 10 --195 195 195 188 164 115 192 133 9 225 175 15 --239 182 13 234 190 10 232 195 16 232 200 30 --245 207 45 241 208 19 232 195 16 184 144 12 --218 194 134 211 206 186 42 42 42 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 50 50 50 74 74 74 30 30 30 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 34 34 34 86 86 86 14 14 14 2 2 6 --121 87 25 192 133 9 219 162 10 239 182 13 --236 186 11 232 195 16 241 208 19 244 214 54 --246 218 60 246 218 38 246 215 20 241 208 19 --241 208 19 226 184 13 121 87 25 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 50 50 50 82 82 82 34 34 34 10 10 10 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 34 34 34 82 82 82 30 30 30 61 42 6 --180 123 7 206 145 10 230 174 11 239 182 13 --234 190 10 238 202 15 241 208 19 246 218 74 --246 218 38 246 215 20 246 215 20 246 215 20 --226 184 13 215 174 15 184 144 12 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 26 26 26 94 94 94 42 42 42 14 14 14 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 50 50 50 104 69 6 --192 133 9 216 158 10 236 178 12 236 186 11 --232 195 16 241 208 19 244 214 54 245 215 43 --246 215 20 246 215 20 241 208 19 198 155 10 --200 144 11 216 158 10 156 118 10 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 90 90 90 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 46 46 46 22 22 22 --137 92 6 210 162 10 239 182 13 238 190 10 --238 202 15 241 208 19 246 215 20 246 215 20 --241 208 19 203 166 17 185 133 11 210 150 10 --216 158 10 210 150 10 102 78 10 2 2 6 -- 6 6 6 54 54 54 14 14 14 2 2 6 -- 2 2 6 62 62 62 74 74 74 30 30 30 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 34 34 34 78 78 78 50 50 50 6 6 6 -- 94 70 30 139 102 15 190 146 13 226 184 13 --232 200 30 232 195 16 215 174 15 190 146 13 --168 122 10 192 133 9 210 150 10 213 154 11 --202 150 34 182 157 106 101 98 89 2 2 6 -- 2 2 6 78 78 78 116 116 116 58 58 58 -- 2 2 6 22 22 22 90 90 90 46 46 46 -- 18 18 18 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 86 86 86 50 50 50 6 6 6 --128 128 128 174 154 114 156 107 11 168 122 10 --198 155 10 184 144 12 197 138 11 200 144 11 --206 145 10 206 145 10 197 138 11 188 164 115 --195 195 195 198 198 198 174 174 174 14 14 14 -- 2 2 6 22 22 22 116 116 116 116 116 116 -- 22 22 22 2 2 6 74 74 74 70 70 70 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 101 101 101 26 26 26 10 10 10 --138 138 138 190 190 190 174 154 114 156 107 11 --197 138 11 200 144 11 197 138 11 192 133 9 --180 123 7 190 142 34 190 178 144 187 187 187 --202 202 202 221 221 221 214 214 214 66 66 66 -- 2 2 6 2 2 6 50 50 50 62 62 62 -- 6 6 6 2 2 6 10 10 10 90 90 90 -- 50 50 50 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 34 34 34 -- 74 74 74 74 74 74 2 2 6 6 6 6 --144 144 144 198 198 198 190 190 190 178 166 146 --154 121 60 156 107 11 156 107 11 168 124 44 --174 154 114 187 187 187 190 190 190 210 210 210 --246 246 246 253 253 253 253 253 253 182 182 182 -- 6 6 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 62 62 62 -- 74 74 74 34 34 34 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 10 10 10 22 22 22 54 54 54 -- 94 94 94 18 18 18 2 2 6 46 46 46 --234 234 234 221 221 221 190 190 190 190 190 190 --190 190 190 187 187 187 187 187 187 190 190 190 --190 190 190 195 195 195 214 214 214 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 -- 82 82 82 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 14 14 14 -- 86 86 86 54 54 54 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 46 46 46 90 90 90 -- 46 46 46 18 18 18 6 6 6 182 182 182 --253 253 253 246 246 246 206 206 206 190 190 190 --190 190 190 190 190 190 190 190 190 190 190 190 --206 206 206 231 231 231 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --202 202 202 14 14 14 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 42 42 42 86 86 86 42 42 42 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 14 14 14 38 38 38 74 74 74 66 66 66 -- 2 2 6 6 6 6 90 90 90 250 250 250 --253 253 253 253 253 253 238 238 238 198 198 198 --190 190 190 190 190 190 195 195 195 221 221 221 --246 246 246 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 82 82 82 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 78 78 78 70 70 70 34 34 34 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 34 34 34 66 66 66 78 78 78 6 6 6 -- 2 2 6 18 18 18 218 218 218 253 253 253 --253 253 253 253 253 253 253 253 253 246 246 246 --226 226 226 231 231 231 246 246 246 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 178 178 178 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 18 18 18 90 90 90 62 62 62 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 26 26 26 -- 58 58 58 90 90 90 18 18 18 2 2 6 -- 2 2 6 110 110 110 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 231 231 231 18 18 18 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 18 18 18 94 94 94 -- 54 54 54 26 26 26 10 10 10 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 22 22 22 50 50 50 -- 90 90 90 26 26 26 2 2 6 2 2 6 -- 14 14 14 195 195 195 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 242 242 242 54 54 54 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 38 38 38 -- 86 86 86 50 50 50 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 38 38 38 82 82 82 -- 34 34 34 2 2 6 2 2 6 2 2 6 -- 42 42 42 195 195 195 246 246 246 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --242 242 242 242 242 242 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 250 250 250 246 246 246 238 238 238 --226 226 226 231 231 231 101 101 101 6 6 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 38 38 38 82 82 82 42 42 42 14 14 14 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 10 10 10 26 26 26 62 62 62 66 66 66 -- 2 2 6 2 2 6 2 2 6 6 6 6 -- 70 70 70 170 170 170 206 206 206 234 234 234 --246 246 246 250 250 250 250 250 250 238 238 238 --226 226 226 231 231 231 238 238 238 250 250 250 --250 250 250 250 250 250 246 246 246 231 231 231 --214 214 214 206 206 206 202 202 202 202 202 202 --198 198 198 202 202 202 182 182 182 18 18 18 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 62 62 62 66 66 66 30 30 30 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 14 14 14 42 42 42 82 82 82 18 18 18 -- 2 2 6 2 2 6 2 2 6 10 10 10 -- 94 94 94 182 182 182 218 218 218 242 242 242 --250 250 250 253 253 253 253 253 253 250 250 250 --234 234 234 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 246 246 246 --238 238 238 226 226 226 210 210 210 202 202 202 --195 195 195 195 195 195 210 210 210 158 158 158 -- 6 6 6 14 14 14 50 50 50 14 14 14 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 86 86 86 46 46 46 -- 18 18 18 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 22 22 22 54 54 54 70 70 70 2 2 6 -- 2 2 6 10 10 10 2 2 6 22 22 22 --166 166 166 231 231 231 250 250 250 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --242 242 242 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 246 246 246 --231 231 231 206 206 206 198 198 198 226 226 226 -- 94 94 94 2 2 6 6 6 6 38 38 38 -- 30 30 30 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 62 62 62 66 66 66 -- 26 26 26 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 74 74 74 50 50 50 2 2 6 -- 26 26 26 26 26 26 2 2 6 106 106 106 --238 238 238 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 246 246 246 218 218 218 202 202 202 --210 210 210 14 14 14 2 2 6 2 2 6 -- 30 30 30 22 22 22 2 2 6 2 2 6 -- 2 2 6 2 2 6 18 18 18 86 86 86 -- 42 42 42 14 14 14 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 42 42 42 90 90 90 22 22 22 2 2 6 -- 42 42 42 2 2 6 18 18 18 218 218 218 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 250 250 250 221 221 221 --218 218 218 101 101 101 2 2 6 14 14 14 -- 18 18 18 38 38 38 10 10 10 2 2 6 -- 2 2 6 2 2 6 2 2 6 78 78 78 -- 58 58 58 22 22 22 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 54 54 54 82 82 82 2 2 6 26 26 26 -- 22 22 22 2 2 6 123 123 123 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --238 238 238 198 198 198 6 6 6 38 38 38 -- 58 58 58 26 26 26 38 38 38 2 2 6 -- 2 2 6 2 2 6 2 2 6 46 46 46 -- 78 78 78 30 30 30 10 10 10 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 10 10 10 30 30 30 -- 74 74 74 58 58 58 2 2 6 42 42 42 -- 2 2 6 22 22 22 231 231 231 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 250 250 250 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 246 246 246 46 46 46 38 38 38 -- 42 42 42 14 14 14 38 38 38 14 14 14 -- 2 2 6 2 2 6 2 2 6 6 6 6 -- 86 86 86 46 46 46 14 14 14 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 14 14 14 42 42 42 -- 90 90 90 18 18 18 18 18 18 26 26 26 -- 2 2 6 116 116 116 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 250 250 250 238 238 238 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 94 94 94 6 6 6 -- 2 2 6 2 2 6 10 10 10 34 34 34 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 74 74 74 58 58 58 22 22 22 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 10 10 10 26 26 26 66 66 66 -- 82 82 82 2 2 6 38 38 38 6 6 6 -- 14 14 14 210 210 210 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 246 246 246 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 144 144 144 2 2 6 -- 2 2 6 2 2 6 2 2 6 46 46 46 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 42 42 42 74 74 74 30 30 30 10 10 10 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 42 42 42 90 90 90 -- 26 26 26 6 6 6 42 42 42 2 2 6 -- 74 74 74 250 250 250 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 242 242 242 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 182 182 182 2 2 6 -- 2 2 6 2 2 6 2 2 6 46 46 46 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 10 10 10 86 86 86 38 38 38 10 10 10 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 10 10 10 26 26 26 66 66 66 82 82 82 -- 2 2 6 22 22 22 18 18 18 2 2 6 --149 149 149 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 206 206 206 2 2 6 -- 2 2 6 2 2 6 2 2 6 38 38 38 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 86 86 86 46 46 46 14 14 14 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 18 18 18 46 46 46 86 86 86 18 18 18 -- 2 2 6 34 34 34 10 10 10 6 6 6 --210 210 210 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 221 221 221 6 6 6 -- 2 2 6 2 2 6 6 6 6 30 30 30 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 82 82 82 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 26 26 26 66 66 66 62 62 62 2 2 6 -- 2 2 6 38 38 38 10 10 10 26 26 26 --238 238 238 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 238 238 238 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 6 6 6 -- 2 2 6 2 2 6 10 10 10 30 30 30 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 58 58 58 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 38 38 38 78 78 78 6 6 6 2 2 6 -- 2 2 6 46 46 46 14 14 14 42 42 42 --246 246 246 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 10 10 10 -- 2 2 6 2 2 6 22 22 22 14 14 14 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 62 62 62 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 74 74 74 2 2 6 2 2 6 -- 14 14 14 70 70 70 34 34 34 62 62 62 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 14 14 14 -- 2 2 6 2 2 6 30 30 30 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 62 62 62 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 54 54 54 62 62 62 2 2 6 2 2 6 -- 2 2 6 30 30 30 46 46 46 70 70 70 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 226 226 226 10 10 10 -- 2 2 6 6 6 6 30 30 30 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 66 66 66 58 58 58 22 22 22 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 22 22 22 -- 58 58 58 62 62 62 2 2 6 2 2 6 -- 2 2 6 2 2 6 30 30 30 78 78 78 --250 250 250 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 206 206 206 2 2 6 -- 22 22 22 34 34 34 18 14 6 22 22 22 -- 26 26 26 18 18 18 6 6 6 2 2 6 -- 2 2 6 82 82 82 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 26 26 26 -- 62 62 62 106 106 106 74 54 14 185 133 11 --210 162 10 121 92 8 6 6 6 62 62 62 --238 238 238 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 246 246 246 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 158 158 158 18 18 18 -- 14 14 14 2 2 6 2 2 6 2 2 6 -- 6 6 6 18 18 18 66 66 66 38 38 38 -- 6 6 6 94 94 94 50 50 50 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 10 10 10 10 10 10 18 18 18 38 38 38 -- 78 78 78 142 134 106 216 158 10 242 186 14 --246 190 14 246 190 14 156 118 10 10 10 10 -- 90 90 90 238 238 238 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 250 250 250 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 246 230 190 --238 204 91 238 204 91 181 142 44 37 26 9 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 38 38 38 46 46 46 -- 26 26 26 106 106 106 54 54 54 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 14 14 14 22 22 22 -- 30 30 30 38 38 38 50 50 50 70 70 70 --106 106 106 190 142 34 226 170 11 242 186 14 --246 190 14 246 190 14 246 190 14 154 114 10 -- 6 6 6 74 74 74 226 226 226 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 231 231 231 250 250 250 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 228 184 62 --241 196 14 241 208 19 232 195 16 38 30 10 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 30 30 30 26 26 26 --203 166 17 154 142 90 66 66 66 26 26 26 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 38 38 38 58 58 58 -- 78 78 78 86 86 86 101 101 101 123 123 123 --175 146 61 210 150 10 234 174 13 246 186 14 --246 190 14 246 190 14 246 190 14 238 190 10 --102 78 10 2 2 6 46 46 46 198 198 198 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 234 234 234 242 242 242 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 224 178 62 --242 186 14 241 196 14 210 166 10 22 18 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 6 6 6 121 92 8 --238 202 15 232 195 16 82 82 82 34 34 34 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 14 14 14 38 38 38 70 70 70 154 122 46 --190 142 34 200 144 11 197 138 11 197 138 11 --213 154 11 226 170 11 242 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --225 175 15 46 32 6 2 2 6 22 22 22 --158 158 158 250 250 250 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 250 250 250 242 242 242 224 178 62 --239 182 13 236 186 11 213 154 11 46 32 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 61 42 6 225 175 15 --238 190 10 236 186 11 112 100 78 42 42 42 -- 14 14 14 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 22 22 22 54 54 54 154 122 46 213 154 11 --226 170 11 230 174 11 226 170 11 226 170 11 --236 178 12 242 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --241 196 14 184 144 12 10 10 10 2 2 6 -- 6 6 6 116 116 116 242 242 242 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 231 231 231 198 198 198 214 170 54 --236 178 12 236 178 12 210 150 10 137 92 6 -- 18 14 6 2 2 6 2 2 6 2 2 6 -- 6 6 6 70 47 6 200 144 11 236 178 12 --239 182 13 239 182 13 124 112 88 58 58 58 -- 22 22 22 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 70 70 70 180 133 36 226 170 11 --239 182 13 242 186 14 242 186 14 246 186 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 232 195 16 98 70 6 2 2 6 -- 2 2 6 2 2 6 66 66 66 221 221 221 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 206 206 206 198 198 198 214 166 58 --230 174 11 230 174 11 216 158 10 192 133 9 --163 110 8 116 81 8 102 78 10 116 81 8 --167 114 7 197 138 11 226 170 11 239 182 13 --242 186 14 242 186 14 162 146 94 78 78 78 -- 34 34 34 14 14 14 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 30 30 30 78 78 78 190 142 34 226 170 11 --239 182 13 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 241 196 14 203 166 17 22 18 6 -- 2 2 6 2 2 6 2 2 6 38 38 38 --218 218 218 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 206 206 206 198 198 198 202 162 69 --226 170 11 236 178 12 224 166 10 210 150 10 --200 144 11 197 138 11 192 133 9 197 138 11 --210 150 10 226 170 11 242 186 14 246 190 14 --246 190 14 246 186 14 225 175 15 124 112 88 -- 62 62 62 30 30 30 14 14 14 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 174 135 50 224 166 10 --239 182 13 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 241 196 14 139 102 15 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 78 78 78 250 250 250 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --250 250 250 214 214 214 198 198 198 190 150 46 --219 162 10 236 178 12 234 174 13 224 166 10 --216 158 10 213 154 11 213 154 11 216 158 10 --226 170 11 239 182 13 246 190 14 246 190 14 --246 190 14 246 190 14 242 186 14 206 162 42 --101 101 101 58 58 58 30 30 30 14 14 14 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 74 74 74 174 135 50 216 158 10 --236 178 12 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 241 196 14 226 184 13 -- 61 42 6 2 2 6 2 2 6 2 2 6 -- 22 22 22 238 238 238 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 226 226 226 187 187 187 180 133 36 --216 158 10 236 178 12 239 182 13 236 178 12 --230 174 11 226 170 11 226 170 11 230 174 11 --236 178 12 242 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 186 14 239 182 13 --206 162 42 106 106 106 66 66 66 34 34 34 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 26 26 26 70 70 70 163 133 67 213 154 11 --236 178 12 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 241 196 14 --190 146 13 18 14 6 2 2 6 2 2 6 -- 46 46 46 246 246 246 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 221 221 221 86 86 86 156 107 11 --216 158 10 236 178 12 242 186 14 246 186 14 --242 186 14 239 182 13 239 182 13 242 186 14 --242 186 14 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --242 186 14 225 175 15 142 122 72 66 66 66 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 26 26 26 70 70 70 163 133 67 210 150 10 --236 178 12 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --232 195 16 121 92 8 34 34 34 106 106 106 --221 221 221 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --242 242 242 82 82 82 18 14 6 163 110 8 --216 158 10 236 178 12 242 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 242 186 14 163 133 67 -- 46 46 46 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 10 10 10 -- 30 30 30 78 78 78 163 133 67 210 150 10 --236 178 12 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --241 196 14 215 174 15 190 178 144 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 218 218 218 -- 58 58 58 2 2 6 22 18 6 167 114 7 --216 158 10 236 178 12 246 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 186 14 242 186 14 190 150 46 -- 54 54 54 22 22 22 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 38 38 38 86 86 86 180 133 36 213 154 11 --236 178 12 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 232 195 16 190 146 13 214 214 214 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 250 250 250 170 170 170 26 26 26 -- 2 2 6 2 2 6 37 26 9 163 110 8 --219 162 10 239 182 13 246 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 186 14 236 178 12 224 166 10 142 122 72 -- 46 46 46 18 18 18 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 109 106 95 192 133 9 224 166 10 --242 186 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --242 186 14 226 184 13 210 162 10 142 110 46 --226 226 226 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --253 253 253 253 253 253 253 253 253 253 253 253 --198 198 198 66 66 66 2 2 6 2 2 6 -- 2 2 6 2 2 6 50 34 6 156 107 11 --219 162 10 239 182 13 246 186 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 242 186 14 --234 174 13 213 154 11 154 122 46 66 66 66 -- 30 30 30 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 22 22 22 -- 58 58 58 154 121 60 206 145 10 234 174 13 --242 186 14 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 186 14 236 178 12 210 162 10 163 110 8 -- 61 42 6 138 138 138 218 218 218 250 250 250 --253 253 253 253 253 253 253 253 253 250 250 250 --242 242 242 210 210 210 144 144 144 66 66 66 -- 6 6 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 61 42 6 163 110 8 --216 158 10 236 178 12 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 239 182 13 230 174 11 216 158 10 --190 142 34 124 112 88 70 70 70 38 38 38 -- 18 18 18 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 22 22 22 -- 62 62 62 168 124 44 206 145 10 224 166 10 --236 178 12 239 182 13 242 186 14 242 186 14 --246 186 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 236 178 12 216 158 10 175 118 6 -- 80 54 7 2 2 6 6 6 6 30 30 30 -- 54 54 54 62 62 62 50 50 50 38 38 38 -- 14 14 14 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 80 54 7 167 114 7 --213 154 11 236 178 12 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 190 14 242 186 14 239 182 13 239 182 13 --230 174 11 210 150 10 174 135 50 124 112 88 -- 82 82 82 54 54 54 34 34 34 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 18 18 18 -- 50 50 50 158 118 36 192 133 9 200 144 11 --216 158 10 219 162 10 224 166 10 226 170 11 --230 174 11 236 178 12 239 182 13 239 182 13 --242 186 14 246 186 14 246 190 14 246 190 14 --246 190 14 246 190 14 246 190 14 246 190 14 --246 186 14 230 174 11 210 150 10 163 110 8 --104 69 6 10 10 10 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 91 60 6 167 114 7 --206 145 10 230 174 11 242 186 14 246 190 14 --246 190 14 246 190 14 246 186 14 242 186 14 --239 182 13 230 174 11 224 166 10 213 154 11 --180 133 36 124 112 88 86 86 86 58 58 58 -- 38 38 38 22 22 22 10 10 10 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 14 14 14 -- 34 34 34 70 70 70 138 110 50 158 118 36 --167 114 7 180 123 7 192 133 9 197 138 11 --200 144 11 206 145 10 213 154 11 219 162 10 --224 166 10 230 174 11 239 182 13 242 186 14 --246 186 14 246 186 14 246 186 14 246 186 14 --239 182 13 216 158 10 185 133 11 152 99 6 --104 69 6 18 14 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 2 2 6 2 2 6 2 2 6 -- 2 2 6 6 6 6 80 54 7 152 99 6 --192 133 9 219 162 10 236 178 12 239 182 13 --246 186 14 242 186 14 239 182 13 236 178 12 --224 166 10 206 145 10 192 133 9 154 121 60 -- 94 94 94 62 62 62 42 42 42 22 22 22 -- 14 14 14 6 6 6 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 18 18 18 34 34 34 58 58 58 78 78 78 --101 98 89 124 112 88 142 110 46 156 107 11 --163 110 8 167 114 7 175 118 6 180 123 7 --185 133 11 197 138 11 210 150 10 219 162 10 --226 170 11 236 178 12 236 178 12 234 174 13 --219 162 10 197 138 11 163 110 8 130 83 6 -- 91 60 6 10 10 10 2 2 6 2 2 6 -- 18 18 18 38 38 38 38 38 38 38 38 38 -- 38 38 38 38 38 38 38 38 38 38 38 38 -- 38 38 38 38 38 38 26 26 26 2 2 6 -- 2 2 6 6 6 6 70 47 6 137 92 6 --175 118 6 200 144 11 219 162 10 230 174 11 --234 174 13 230 174 11 219 162 10 210 150 10 --192 133 9 163 110 8 124 112 88 82 82 82 -- 50 50 50 30 30 30 14 14 14 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 14 14 14 22 22 22 34 34 34 -- 42 42 42 58 58 58 74 74 74 86 86 86 --101 98 89 122 102 70 130 98 46 121 87 25 --137 92 6 152 99 6 163 110 8 180 123 7 --185 133 11 197 138 11 206 145 10 200 144 11 --180 123 7 156 107 11 130 83 6 104 69 6 -- 50 34 6 54 54 54 110 110 110 101 98 89 -- 86 86 86 82 82 82 78 78 78 78 78 78 -- 78 78 78 78 78 78 78 78 78 78 78 78 -- 78 78 78 82 82 82 86 86 86 94 94 94 --106 106 106 101 101 101 86 66 34 124 80 6 --156 107 11 180 123 7 192 133 9 200 144 11 --206 145 10 200 144 11 192 133 9 175 118 6 --139 102 15 109 106 95 70 70 70 42 42 42 -- 22 22 22 10 10 10 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 6 6 6 10 10 10 -- 14 14 14 22 22 22 30 30 30 38 38 38 -- 50 50 50 62 62 62 74 74 74 90 90 90 --101 98 89 112 100 78 121 87 25 124 80 6 --137 92 6 152 99 6 152 99 6 152 99 6 --138 86 6 124 80 6 98 70 6 86 66 30 --101 98 89 82 82 82 58 58 58 46 46 46 -- 38 38 38 34 34 34 34 34 34 34 34 34 -- 34 34 34 34 34 34 34 34 34 34 34 34 -- 34 34 34 34 34 34 38 38 38 42 42 42 -- 54 54 54 82 82 82 94 86 76 91 60 6 --134 86 6 156 107 11 167 114 7 175 118 6 --175 118 6 167 114 7 152 99 6 121 87 25 --101 98 89 62 62 62 34 34 34 18 18 18 -- 6 6 6 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 6 6 6 10 10 10 -- 18 18 18 22 22 22 30 30 30 42 42 42 -- 50 50 50 66 66 66 86 86 86 101 98 89 --106 86 58 98 70 6 104 69 6 104 69 6 --104 69 6 91 60 6 82 62 34 90 90 90 -- 62 62 62 38 38 38 22 22 22 14 14 14 -- 10 10 10 10 10 10 10 10 10 10 10 10 -- 10 10 10 10 10 10 6 6 6 10 10 10 -- 10 10 10 10 10 10 10 10 10 14 14 14 -- 22 22 22 42 42 42 70 70 70 89 81 66 -- 80 54 7 104 69 6 124 80 6 137 92 6 --134 86 6 116 81 8 100 82 52 86 86 86 -- 58 58 58 30 30 30 14 14 14 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 10 10 10 14 14 14 -- 18 18 18 26 26 26 38 38 38 54 54 54 -- 70 70 70 86 86 86 94 86 76 89 81 66 -- 89 81 66 86 86 86 74 74 74 50 50 50 -- 30 30 30 14 14 14 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 18 18 18 34 34 34 58 58 58 -- 82 82 82 89 81 66 89 81 66 89 81 66 -- 94 86 66 94 86 76 74 74 74 50 50 50 -- 26 26 26 14 14 14 6 6 6 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 6 6 6 6 6 6 14 14 14 18 18 18 -- 30 30 30 38 38 38 46 46 46 54 54 54 -- 50 50 50 42 42 42 30 30 30 18 18 18 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 6 6 6 14 14 14 26 26 26 -- 38 38 38 50 50 50 58 58 58 58 58 58 -- 54 54 54 42 42 42 30 30 30 18 18 18 -- 10 10 10 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 6 6 6 10 10 10 14 14 14 18 18 18 -- 18 18 18 14 14 14 10 10 10 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 6 6 6 -- 14 14 14 18 18 18 22 22 22 22 22 22 -- 18 18 18 14 14 14 10 10 10 6 6 6 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -- 0 0 0 0 0 0 0 0 0 0 0 0 -+# CREATOR: GIMP PNM Filter Version 1.1 -+640 480 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+240 -+246 -+248 -+235 -+240 -+243 -+231 -+237 -+239 -+231 -+237 -+239 -+230 -+236 -+238 -+231 -+237 -+239 -+233 -+238 -+240 -+240 -+246 -+248 -+249 -+251 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+212 -+217 -+219 -+191 -+196 -+198 -+170 -+178 -+186 -+151 -+159 -+167 -+125 -+144 -+155 -+112 -+131 -+142 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+110 -+129 -+140 -+126 -+141 -+147 -+142 -+158 -+164 -+167 -+175 -+183 -+188 -+193 -+195 -+208 -+214 -+216 -+234 -+239 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+248 -+244 -+208 -+214 -+216 -+173 -+181 -+189 -+136 -+151 -+157 -+106 -+125 -+136 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+103 -+121 -+132 -+132 -+147 -+153 -+168 -+176 -+184 -+204 -+209 -+212 -+237 -+242 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+215 -+220 -+223 -+171 -+179 -+187 -+120 -+139 -+151 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+162 -+170 -+178 -+208 -+214 -+216 -+245 -+250 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+207 -+212 -+215 -+149 -+165 -+171 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+137 -+152 -+158 -+198 -+204 -+206 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+158 -+166 -+174 -+102 -+120 -+131 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+149 -+157 -+165 -+208 -+214 -+216 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+249 -+246 -+190 -+195 -+197 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+175 -+183 -+191 -+237 -+242 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+170 -+178 -+186 -+102 -+120 -+131 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+152 -+168 -+174 -+226 -+231 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+234 -+239 -+242 -+158 -+166 -+174 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+142 -+158 -+164 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+236 -+241 -+244 -+166 -+174 -+182 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+151 -+159 -+167 -+230 -+236 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+181 -+190 -+198 -+102 -+120 -+131 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+168 -+176 -+184 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+214 -+216 -+112 -+131 -+142 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+194 -+199 -+202 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+153 -+161 -+169 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+132 -+147 -+153 -+229 -+234 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+242 -+247 -+249 -+150 -+166 -+172 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+134 -+149 -+155 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+226 -+228 -+111 -+130 -+141 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+103 -+121 -+132 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+199 -+202 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+172 -+180 -+188 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+136 -+151 -+157 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+133 -+148 -+154 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+231 -+237 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+237 -+239 -+116 -+135 -+146 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+106 -+125 -+136 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+119 -+138 -+150 -+141 -+156 -+163 -+158 -+166 -+174 -+166 -+174 -+182 -+172 -+180 -+188 -+180 -+188 -+197 -+192 -+197 -+200 -+192 -+197 -+200 -+180 -+188 -+197 -+173 -+181 -+189 -+168 -+176 -+184 -+155 -+170 -+177 -+146 -+161 -+167 -+126 -+141 -+147 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+228 -+230 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+106 -+125 -+136 -+152 -+160 -+168 -+184 -+192 -+201 -+210 -+216 -+218 -+233 -+238 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+236 -+241 -+244 -+214 -+219 -+221 -+192 -+197 -+200 -+158 -+166 -+174 -+112 -+131 -+142 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+206 -+211 -+214 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+146 -+161 -+167 -+190 -+195 -+197 -+226 -+231 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+234 -+239 -+242 -+196 -+201 -+204 -+155 -+163 -+171 -+106 -+125 -+136 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+203 -+208 -+210 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+225 -+230 -+233 -+104 -+122 -+133 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+137 -+152 -+158 -+199 -+205 -+207 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+208 -+214 -+216 -+153 -+161 -+169 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+182 -+191 -+199 -+236 -+241 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+248 -+244 -+195 -+200 -+203 -+127 -+142 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+213 -+218 -+220 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+237 -+242 -+245 -+108 -+127 -+138 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+199 -+205 -+207 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+132 -+147 -+153 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+127 -+142 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+126 -+141 -+147 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+217 -+222 -+225 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+140 -+155 -+162 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+113 -+132 -+143 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+162 -+170 -+178 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+177 -+185 -+194 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+157 -+165 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+207 -+212 -+215 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+119 -+138 -+150 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+237 -+239 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+162 -+170 -+178 -+249 -+251 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+178 -+237 -+248 -+144 -+227 -+241 -+109 -+218 -+241 -+71 -+207 -+235 -+44 -+201 -+234 -+40 -+199 -+232 -+35 -+196 -+230 -+0 -+193 -+232 -+0 -+193 -+232 -+0 -+196 -+234 -+40 -+199 -+232 -+44 -+201 -+234 -+66 -+204 -+231 -+105 -+214 -+238 -+135 -+225 -+244 -+176 -+235 -+246 -+219 -+244 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+182 -+191 -+199 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+215 -+220 -+223 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+125 -+144 -+155 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+203 -+208 -+210 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+155 -+229 -+244 -+77 -+211 -+239 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+74 -+209 -+237 -+137 -+226 -+245 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+223 -+226 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+120 -+139 -+151 -+231 -+237 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+134 -+224 -+243 -+42 -+200 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+119 -+219 -+238 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+140 -+155 -+162 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+151 -+159 -+167 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+136 -+151 -+157 -+244 -+249 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+174 -+232 -+244 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+155 -+229 -+244 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+119 -+138 -+150 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+155 -+229 -+244 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+134 -+224 -+243 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+135 -+225 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+230 -+236 -+238 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+49 -+203 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+178 -+237 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+141 -+156 -+163 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+155 -+170 -+177 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+109 -+218 -+241 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+188 -+193 -+195 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+116 -+135 -+146 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+213 -+218 -+220 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+140 -+155 -+162 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+193 -+238 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+188 -+193 -+195 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+118 -+137 -+149 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+245 -+250 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+131 -+220 -+240 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+73 -+208 -+236 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+131 -+146 -+152 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+172 -+180 -+188 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+115 -+134 -+145 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+49 -+203 -+236 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+239 -+245 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+181 -+190 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+170 -+178 -+186 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+140 -+155 -+162 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+171 -+179 -+187 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+102 -+120 -+131 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+240 -+246 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+126 -+141 -+147 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+195 -+200 -+203 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+229 -+234 -+237 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+126 -+145 -+157 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+121 -+222 -+240 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+188 -+237 -+251 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+144 -+227 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+168 -+176 -+184 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+232 -+249 -+255 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+195 -+200 -+203 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+234 -+239 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+210 -+213 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+239 -+245 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+44 -+201 -+234 -+74 -+209 -+237 -+76 -+210 -+238 -+76 -+210 -+238 -+76 -+210 -+238 -+66 -+204 -+231 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+113 -+132 -+143 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+152 -+160 -+168 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+167 -+175 -+183 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+110 -+219 -+242 -+187 -+236 -+249 -+240 -+253 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+195 -+241 -+248 -+134 -+224 -+243 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+195 -+200 -+203 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+118 -+137 -+149 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+109 -+218 -+241 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+110 -+129 -+140 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+208 -+210 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+155 -+170 -+177 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+134 -+224 -+243 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+190 -+195 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+150 -+166 -+172 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+231 -+237 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+127 -+142 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+126 -+137 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+74 -+209 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+175 -+233 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+166 -+174 -+182 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+195 -+200 -+203 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+180 -+188 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+247 -+249 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+231 -+248 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+116 -+135 -+146 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+141 -+156 -+163 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+248 -+254 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+185 -+194 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+225 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+229 -+234 -+237 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+203 -+240 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+113 -+132 -+143 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+204 -+209 -+212 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+173 -+181 -+189 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+172 -+180 -+188 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+173 -+181 -+189 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+121 -+222 -+240 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+47 -+202 -+235 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+74 -+209 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+141 -+156 -+163 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+140 -+155 -+162 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+214 -+219 -+221 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+202 -+239 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+0 -+190 -+229 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+111 -+130 -+141 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+111 -+130 -+141 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+236 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+202 -+239 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+132 -+221 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+152 -+160 -+168 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+226 -+231 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+157 -+165 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+214 -+219 -+221 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+171 -+179 -+187 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+137 -+226 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+190 -+195 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+228 -+230 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+171 -+179 -+187 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+188 -+193 -+195 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+226 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+194 -+239 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+244 -+249 -+252 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+92 -+214 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+142 -+158 -+164 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+246 -+248 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+178 -+237 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+144 -+227 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+74 -+209 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+137 -+226 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+132 -+147 -+153 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+150 -+166 -+172 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+178 -+237 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+232 -+249 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+121 -+140 -+152 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+161 -+169 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+128 -+143 -+149 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+146 -+161 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+106 -+125 -+136 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+144 -+227 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+231 -+246 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+141 -+156 -+163 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+146 -+161 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+225 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+161 -+169 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+226 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+208 -+245 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+145 -+228 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+105 -+214 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+193 -+238 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+138 -+150 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+166 -+174 -+182 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+176 -+235 -+246 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+155 -+229 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+202 -+239 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+132 -+221 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+111 -+130 -+141 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+237 -+242 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+204 -+241 -+250 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+187 -+236 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+182 -+191 -+199 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+224 -+229 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+92 -+214 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+150 -+166 -+172 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+203 -+208 -+210 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+172 -+180 -+188 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+215 -+220 -+223 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+110 -+219 -+242 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+211 -+214 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+190 -+195 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+230 -+236 -+238 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+165 -+171 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+71 -+207 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+90 -+213 -+236 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+71 -+207 -+235 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+51 -+204 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+180 -+188 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+205 -+210 -+213 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+122 -+141 -+153 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+177 -+236 -+247 -+177 -+236 -+247 -+203 -+240 -+249 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+152 -+168 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+220 -+226 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+231 -+248 -+254 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+177 -+236 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+125 -+144 -+155 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+246 -+248 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+169 -+177 -+185 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+180 -+188 -+197 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+51 -+204 -+237 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+238 -+246 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+178 -+237 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+144 -+227 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+170 -+178 -+186 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+228 -+230 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+101 -+119 -+130 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+231 -+248 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+127 -+142 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+197 -+202 -+205 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+217 -+222 -+225 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+242 -+247 -+249 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+230 -+236 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+174 -+232 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+198 -+201 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+92 -+214 -+237 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+144 -+227 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+132 -+147 -+153 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+152 -+160 -+168 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+217 -+222 -+225 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+238 -+246 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+191 -+196 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+99 -+117 -+128 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+146 -+161 -+167 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+220 -+245 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+185 -+194 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+142 -+158 -+164 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+242 -+247 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+236 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+155 -+229 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+178 -+237 -+248 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+115 -+134 -+145 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+113 -+132 -+143 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+175 -+183 -+191 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+49 -+203 -+236 -+195 -+241 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+74 -+209 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+210 -+213 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+242 -+247 -+249 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+178 -+237 -+248 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+76 -+210 -+238 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+174 -+232 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+122 -+141 -+153 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+150 -+156 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+184 -+192 -+201 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+109 -+218 -+241 -+187 -+236 -+249 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+194 -+239 -+247 -+121 -+222 -+240 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+193 -+198 -+201 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+44 -+201 -+234 -+77 -+211 -+239 -+121 -+222 -+240 -+137 -+226 -+245 -+155 -+229 -+244 -+155 -+229 -+244 -+144 -+227 -+241 -+132 -+221 -+241 -+90 -+213 -+236 -+49 -+203 -+236 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+133 -+148 -+154 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+249 -+246 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+188 -+193 -+195 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+213 -+218 -+220 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+102 -+120 -+131 -+238 -+243 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+145 -+228 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+116 -+135 -+146 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+127 -+142 -+148 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+150 -+166 -+172 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+76 -+210 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+181 -+190 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+194 -+199 -+202 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+217 -+222 -+225 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+244 -+249 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+199 -+202 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+119 -+138 -+150 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+232 -+249 -+255 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+151 -+159 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+166 -+174 -+182 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+108 -+127 -+138 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+170 -+178 -+186 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+248 -+253 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+184 -+192 -+201 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+187 -+236 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+104 -+122 -+133 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+105 -+123 -+134 -+236 -+241 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+223 -+248 -+253 -+42 -+200 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+120 -+139 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+230 -+236 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+177 -+185 -+194 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+133 -+148 -+154 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+37 -+197 -+231 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+162 -+170 -+178 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+153 -+161 -+169 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+162 -+170 -+178 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+233 -+238 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+197 -+202 -+205 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+177 -+185 -+194 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+168 -+231 -+249 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+134 -+224 -+243 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+211 -+214 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+169 -+177 -+185 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+121 -+140 -+152 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+193 -+198 -+201 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+246 -+251 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+202 -+239 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+99 -+117 -+128 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+104 -+122 -+133 -+246 -+248 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+223 -+226 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+153 -+226 -+242 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+119 -+219 -+238 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+158 -+166 -+174 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+146 -+161 -+167 -+199 -+205 -+207 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+105 -+214 -+238 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+74 -+209 -+237 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+90 -+213 -+236 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+71 -+207 -+235 -+194 -+239 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+109 -+218 -+241 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+77 -+211 -+239 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+246 -+251 -+254 -+159 -+232 -+247 -+73 -+208 -+236 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+66 -+204 -+231 -+153 -+226 -+242 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+157 -+230 -+245 -+90 -+213 -+236 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+76 -+210 -+238 -+145 -+228 -+242 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+159 -+232 -+247 -+119 -+219 -+238 -+77 -+211 -+239 -+44 -+201 -+234 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+74 -+209 -+237 -+110 -+219 -+242 -+155 -+229 -+244 -+208 -+245 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+238 -+251 -+252 -+221 -+246 -+251 -+206 -+243 -+252 -+205 -+242 -+251 -+221 -+246 -+251 -+232 -+249 -+255 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+0 -+190 -+229 -+25 -+189 -+229 -+131 -+220 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+71 -+207 -+235 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+246 -+251 -+40 -+199 -+232 -+21 -+188 -+228 -+66 -+204 -+231 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+47 -+202 -+235 -+21 -+188 -+228 -+42 -+200 -+233 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+176 -+235 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+157 -+230 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+153 -+226 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+121 -+222 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+137 -+152 -+158 -+106 -+125 -+136 -+99 -+117 -+128 -+110 -+129 -+140 -+155 -+163 -+171 -+219 -+224 -+227 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+158 -+166 -+174 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+107 -+126 -+137 -+146 -+161 -+167 -+223 -+228 -+230 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+210 -+216 -+218 -+146 -+161 -+167 -+108 -+127 -+138 -+99 -+117 -+128 -+107 -+126 -+137 -+146 -+161 -+167 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+183 -+191 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+105 -+123 -+134 -+137 -+152 -+158 -+213 -+218 -+220 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+92 -+214 -+237 -+37 -+197 -+231 -+0 -+190 -+229 -+0 -+194 -+233 -+71 -+207 -+235 -+159 -+232 -+247 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+0 -+196 -+234 -+77 -+211 -+239 -+205 -+242 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+66 -+204 -+231 -+155 -+229 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+239 -+247 -+77 -+211 -+239 -+35 -+196 -+230 -+0 -+190 -+229 -+0 -+196 -+234 -+74 -+209 -+237 -+176 -+235 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+242 -+251 -+77 -+211 -+239 -+35 -+196 -+230 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+211 -+244 -+247 -+92 -+214 -+237 -+37 -+197 -+231 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+220 -+245 -+250 -+109 -+218 -+241 -+40 -+199 -+232 -+0 -+190 -+229 -+0 -+194 -+233 -+66 -+204 -+231 -+155 -+229 -+244 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+109 -+218 -+241 -+40 -+199 -+232 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+243 -+246 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+167 -+175 -+183 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+215 -+220 -+223 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+195 -+200 -+203 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+244 -+249 -+252 -+146 -+161 -+167 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+146 -+161 -+167 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+172 -+180 -+188 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+109 -+218 -+241 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+157 -+230 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+90 -+213 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+71 -+207 -+235 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+157 -+230 -+245 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+174 -+232 -+244 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+194 -+239 -+247 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+244 -+249 -+252 -+117 -+136 -+148 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+162 -+170 -+178 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+213 -+218 -+220 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+136 -+151 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+196 -+201 -+204 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+77 -+211 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+76 -+210 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+51 -+204 -+237 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+231 -+248 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+169 -+177 -+185 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+210 -+216 -+218 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+128 -+143 -+149 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+191 -+196 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+106 -+125 -+136 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+187 -+236 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+49 -+203 -+236 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+218 -+243 -+248 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+208 -+245 -+254 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+131 -+220 -+240 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+99 -+117 -+128 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+115 -+134 -+145 -+207 -+212 -+215 -+227 -+232 -+235 -+190 -+195 -+197 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+136 -+151 -+157 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+121 -+140 -+152 -+231 -+237 -+239 -+231 -+237 -+239 -+231 -+237 -+239 -+230 -+236 -+238 -+180 -+188 -+197 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+239 -+245 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+112 -+131 -+142 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+199 -+205 -+207 -+227 -+232 -+235 -+198 -+204 -+206 -+107 -+126 -+137 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+112 -+131 -+142 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+231 -+237 -+239 -+231 -+237 -+239 -+231 -+237 -+239 -+231 -+237 -+239 -+196 -+201 -+204 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+220 -+226 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+155 -+229 -+244 -+219 -+244 -+249 -+176 -+235 -+246 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+247 -+253 -+255 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+194 -+239 -+247 -+221 -+246 -+251 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+194 -+239 -+247 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+194 -+239 -+247 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+158 -+231 -+246 -+218 -+243 -+248 -+174 -+232 -+244 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+248 -+254 -+255 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+66 -+204 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+220 -+245 -+250 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+105 -+214 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+134 -+224 -+243 -+211 -+244 -+247 -+187 -+236 -+249 -+49 -+203 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+44 -+201 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+218 -+243 -+248 -+221 -+246 -+251 -+221 -+246 -+251 -+221 -+246 -+251 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+212 -+217 -+219 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+235 -+240 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+199 -+205 -+207 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+250 -+252 -+249 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+104 -+122 -+133 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+231 -+237 -+239 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+231 -+237 -+239 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+126 -+141 -+147 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+203 -+208 -+210 -+254 -+255 -+252 -+248 -+254 -+255 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+174 -+232 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+222 -+247 -+252 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+211 -+244 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+211 -+244 -+247 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+205 -+242 -+251 -+254 -+255 -+252 -+221 -+246 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+246 -+251 -+254 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+253 -+254 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+155 -+229 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+211 -+244 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+195 -+200 -+203 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+132 -+147 -+153 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+250 -+247 -+95 -+113 -+124 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+236 -+241 -+244 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+214 -+219 -+221 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+108 -+127 -+138 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+215 -+220 -+223 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+223 -+248 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+51 -+204 -+237 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+205 -+242 -+251 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+42 -+200 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+177 -+236 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+25 -+189 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+131 -+220 -+240 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+97 -+115 -+126 -+111 -+130 -+141 -+111 -+130 -+141 -+111 -+130 -+141 -+111 -+130 -+141 -+111 -+130 -+141 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+37 -+197 -+231 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+191 -+196 -+198 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+119 -+219 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+192 -+197 -+200 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+234 -+239 -+242 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+109 -+128 -+139 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+207 -+212 -+215 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+112 -+131 -+142 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+221 -+227 -+229 -+246 -+248 -+244 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+232 -+249 -+255 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+194 -+239 -+247 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+238 -+251 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+193 -+238 -+246 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+204 -+241 -+250 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+204 -+209 -+212 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+108 -+127 -+138 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+224 -+227 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+94 -+112 -+123 -+246 -+251 -+254 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+126 -+137 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+225 -+230 -+233 -+254 -+255 -+252 -+208 -+214 -+216 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+116 -+135 -+146 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+222 -+247 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+195 -+241 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+235 -+240 -+243 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+158 -+166 -+174 -+246 -+251 -+254 -+254 -+255 -+252 -+231 -+237 -+239 -+119 -+138 -+150 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+126 -+141 -+147 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+221 -+227 -+229 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+233 -+238 -+240 -+254 -+255 -+252 -+221 -+227 -+229 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+247 -+253 -+255 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+132 -+221 -+241 -+254 -+255 -+252 -+220 -+245 -+250 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+238 -+251 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+73 -+208 -+236 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+175 -+233 -+245 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+155 -+229 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+99 -+117 -+128 -+112 -+131 -+142 -+94 -+112 -+123 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+191 -+196 -+198 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+100 -+118 -+129 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+118 -+137 -+149 -+97 -+115 -+126 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+110 -+129 -+140 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+98 -+116 -+127 -+119 -+138 -+150 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+126 -+141 -+147 -+131 -+146 -+152 -+196 -+201 -+204 -+254 -+255 -+252 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+254 -+255 -+252 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+49 -+203 -+236 -+135 -+225 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+188 -+237 -+251 -+254 -+255 -+252 -+248 -+254 -+255 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+25 -+189 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+66 -+204 -+231 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+47 -+202 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+42 -+200 -+233 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+49 -+203 -+236 -+119 -+219 -+238 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+44 -+201 -+234 -+44 -+201 -+234 -+44 -+201 -+234 -+0 -+196 -+234 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+227 -+232 -+235 -+101 -+119 -+130 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+127 -+142 -+148 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+184 -+192 -+201 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+171 -+179 -+187 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+95 -+113 -+124 -+234 -+239 -+242 -+254 -+255 -+252 -+216 -+221 -+224 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+109 -+128 -+139 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+130 -+145 -+151 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+198 -+204 -+206 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+193 -+238 -+246 -+254 -+255 -+252 -+239 -+252 -+253 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+44 -+201 -+234 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+206 -+243 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+168 -+231 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+187 -+236 -+249 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+158 -+231 -+246 -+254 -+255 -+252 -+254 -+255 -+252 -+203 -+240 -+249 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+107 -+215 -+239 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+213 -+218 -+220 -+103 -+121 -+132 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+120 -+139 -+151 -+236 -+241 -+244 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+149 -+157 -+165 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+126 -+145 -+157 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+219 -+224 -+227 -+254 -+255 -+252 -+226 -+231 -+234 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+116 -+135 -+146 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+137 -+152 -+158 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+207 -+212 -+215 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+247 -+253 -+255 -+0 -+190 -+229 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+40 -+199 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+221 -+246 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+219 -+244 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+71 -+207 -+235 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+187 -+236 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+159 -+232 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+107 -+215 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+153 -+226 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+134 -+224 -+243 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+135 -+225 -+244 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+110 -+219 -+242 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+153 -+161 -+169 -+98 -+116 -+127 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+107 -+126 -+137 -+175 -+183 -+191 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+103 -+121 -+132 -+177 -+185 -+194 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+249 -+251 -+248 -+170 -+178 -+186 -+100 -+118 -+129 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+120 -+139 -+151 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+125 -+144 -+155 -+93 -+111 -+122 -+94 -+112 -+123 -+182 -+191 -+199 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+201 -+206 -+209 -+95 -+113 -+124 -+93 -+111 -+122 -+113 -+132 -+143 -+248 -+250 -+247 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+137 -+226 -+245 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+196 -+234 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+77 -+211 -+239 -+21 -+188 -+228 -+21 -+188 -+228 -+109 -+218 -+241 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+110 -+219 -+242 -+21 -+188 -+228 -+21 -+188 -+228 -+76 -+210 -+238 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+134 -+224 -+243 -+21 -+188 -+228 -+21 -+188 -+228 -+66 -+204 -+231 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+119 -+219 -+238 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+76 -+210 -+238 -+222 -+247 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+132 -+221 -+241 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+40 -+199 -+232 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+137 -+226 -+245 -+0 -+193 -+232 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+35 -+196 -+230 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+155 -+229 -+244 -+0 -+194 -+233 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+194 -+233 -+223 -+248 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+159 -+232 -+247 -+35 -+196 -+230 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+193 -+232 -+219 -+244 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+175 -+233 -+245 -+37 -+197 -+231 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+21 -+188 -+228 -+0 -+190 -+229 -+204 -+241 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+245 -+250 -+253 -+221 -+227 -+229 -+213 -+218 -+220 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+117 -+136 -+148 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+221 -+227 -+229 -+251 -+253 -+250 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+250 -+252 -+249 -+220 -+226 -+228 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+212 -+217 -+219 -+217 -+222 -+225 -+250 -+252 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+251 -+253 -+250 -+218 -+223 -+226 -+227 -+232 -+235 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+233 -+238 -+240 -+216 -+221 -+224 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+204 -+241 -+250 -+205 -+242 -+251 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+203 -+240 -+249 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+202 -+239 -+248 -+248 -+254 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+204 -+241 -+250 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+247 -+253 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+194 -+239 -+247 -+246 -+251 -+254 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+248 -+254 -+255 -+206 -+243 -+252 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+193 -+238 -+246 -+239 -+252 -+253 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+218 -+243 -+248 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+193 -+238 -+246 -+238 -+251 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+219 -+244 -+249 -+188 -+237 -+251 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+187 -+236 -+249 -+188 -+237 -+251 -+232 -+249 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+198 -+204 -+206 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+130 -+145 -+151 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+205 -+210 -+213 -+93 -+111 -+122 -+93 -+111 -+122 -+93 -+111 -+122 -+137 -+152 -+158 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+240 -+246 -+248 -+105 -+123 -+134 -+93 -+111 -+122 -+93 -+111 -+122 -+194 -+199 -+202 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+239 -+245 -+247 -+203 -+208 -+210 -+221 -+227 -+229 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+254 -+255 -+252 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 -+255 --- -1.8.1.5 - diff --git a/recipes-kernel/linux/linux-yocto-3.14/akita/defconfig b/recipes-kernel/linux/linux-yocto-3.14/akita/defconfig deleted file mode 100644 index 7d7046a..0000000 --- a/recipes-kernel/linux/linux-yocto-3.14/akita/defconfig +++ /dev/null @@ -1,445 +0,0 @@ -CONFIG_LOCALVERSION="-yocto-standard" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_KERNEL_LZMA=y -CONFIG_SYSVIPC=y -CONFIG_POSIX_MQUEUE=y -CONFIG_FHANDLE=y -CONFIG_NO_HZ=y -CONFIG_HIGH_RES_TIMERS=y -CONFIG_BSD_PROCESS_ACCT=y -CONFIG_BSD_PROCESS_ACCT_V3=y -CONFIG_IKCONFIG=y -CONFIG_IKCONFIG_PROC=y -CONFIG_LOG_BUF_SHIFT=14 -CONFIG_CGROUPS=y -CONFIG_CGROUP_DEBUG=y -CONFIG_CGROUP_FREEZER=y -CONFIG_CGROUP_DEVICE=y -CONFIG_CPUSETS=y -CONFIG_CGROUP_CPUACCT=y -CONFIG_RESOURCE_COUNTERS=y -CONFIG_MEMCG=y -CONFIG_MEMCG_SWAP=y -CONFIG_MEMCG_KMEM=y -CONFIG_CGROUP_SCHED=y -CONFIG_RT_GROUP_SCHED=y -CONFIG_BLK_CGROUP=y -CONFIG_NAMESPACES=y -CONFIG_USER_NS=y -CONFIG_RELAY=y -CONFIG_BLK_DEV_INITRD=y -CONFIG_RD_BZIP2=y -CONFIG_RD_LZMA=y -CONFIG_RD_XZ=y -CONFIG_RD_LZO=y -CONFIG_CC_OPTIMIZE_FOR_SIZE=y -CONFIG_EMBEDDED=y -CONFIG_PERF_EVENTS=y -CONFIG_SLAB=y -CONFIG_MODULES=y -CONFIG_MODULE_UNLOAD=y -CONFIG_MODULE_FORCE_UNLOAD=y -CONFIG_PARTITION_ADVANCED=y -# CONFIG_EFI_PARTITION is not set -CONFIG_ARCH_PXA=y -CONFIG_GPIO_PCA953X=y -CONFIG_PXA_SHARPSL=y -CONFIG_MACH_AKITA=y -CONFIG_MACH_BORZOI=y -CONFIG_PCCARD=y -CONFIG_PCMCIA_PXA2XX=y -CONFIG_PREEMPT=y -CONFIG_AEABI=y -CONFIG_OABI_COMPAT=y -CONFIG_ZBOOT_ROM_TEXT=0x0 -CONFIG_ZBOOT_ROM_BSS=0x0 -CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 fbcon=rotate:1 loglevel=3" -CONFIG_KEXEC=y -CONFIG_BINFMT_MISC=m -CONFIG_PM_RUNTIME=y -CONFIG_NET=y -CONFIG_PACKET=m -CONFIG_UNIX=y -CONFIG_XFRM_USER=m -CONFIG_XFRM_SUB_POLICY=y -CONFIG_NET_KEY=m -CONFIG_NET_KEY_MIGRATE=y -CONFIG_INET=y -CONFIG_IP_MULTICAST=y -CONFIG_IP_ADVANCED_ROUTER=y -CONFIG_IP_MULTIPLE_TABLES=y -CONFIG_IP_ROUTE_MULTIPATH=y -CONFIG_IP_ROUTE_VERBOSE=y -CONFIG_NET_IPIP=m -CONFIG_NET_IPVTI=m -CONFIG_INET_AH=m -CONFIG_INET_ESP=m -CONFIG_INET_IPCOMP=m -CONFIG_INET_XFRM_MODE_TRANSPORT=m -CONFIG_INET_XFRM_MODE_TUNNEL=m -CONFIG_INET_XFRM_MODE_BEET=m -CONFIG_INET_LRO=m -CONFIG_INET_DIAG=m -CONFIG_INET_UDP_DIAG=m -CONFIG_IPV6_ROUTER_PREF=y -CONFIG_INET6_AH=m -CONFIG_INET6_ESP=m -CONFIG_INET6_IPCOMP=m -CONFIG_IPV6_MIP6=m -CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m -CONFIG_IPV6_VTI=m -CONFIG_IPV6_MULTIPLE_TABLES=y -CONFIG_NETFILTER=y -# CONFIG_NETFILTER_ADVANCED is not set -# CONFIG_NETFILTER_NETLINK_LOG is not set -# CONFIG_NF_CONNTRACK is not set -# CONFIG_NETFILTER_XT_MARK is not set -# CONFIG_NETFILTER_XT_TARGET_LOG is not set -# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set -# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set -# CONFIG_NETFILTER_XT_MATCH_POLICY is not set -CONFIG_IP_NF_RAW=m -# CONFIG_IP6_NF_TARGET_REJECT is not set -CONFIG_IP6_NF_RAW=m -CONFIG_IP_SCTP=m -CONFIG_TIPC=m -CONFIG_BRIDGE=m -CONFIG_VLAN_8021Q=m -CONFIG_NET_SCHED=y -CONFIG_NET_SCH_CBQ=m -CONFIG_NET_SCH_HTB=m -CONFIG_NET_SCH_HFSC=m -CONFIG_NET_SCH_PRIO=m -CONFIG_NET_SCH_RED=m -CONFIG_NET_SCH_SFQ=m -CONFIG_NET_SCH_TEQL=m -CONFIG_NET_SCH_TBF=m -CONFIG_NET_SCH_GRED=m -CONFIG_NET_SCH_DSMARK=m -CONFIG_NET_SCH_NETEM=m -CONFIG_NET_SCH_CODEL=m -CONFIG_NET_SCH_INGRESS=m -CONFIG_NET_CLS_BASIC=y -CONFIG_NET_CLS_U32=y -CONFIG_NET_CLS_CGROUP=y -CONFIG_NET_CLS_ACT=y -CONFIG_NET_ACT_MIRRED=m -CONFIG_NET_PKTGEN=m -CONFIG_IRDA=m -CONFIG_IRLAN=m -CONFIG_IRNET=m -CONFIG_IRCOMM=m -CONFIG_PXA_FICP=m -CONFIG_BT=m -CONFIG_BT_RFCOMM=m -CONFIG_BT_RFCOMM_TTY=y -CONFIG_BT_BNEP=m -CONFIG_BT_BNEP_MC_FILTER=y -CONFIG_BT_BNEP_PROTO_FILTER=y -CONFIG_BT_HIDP=m -CONFIG_BT_HCIBTUSB=m -CONFIG_BT_HCIBTSDIO=m -CONFIG_BT_HCIUART=m -CONFIG_BT_HCIUART_H4=y -CONFIG_BT_HCIUART_BCSP=y -CONFIG_BT_HCIUART_ATH3K=y -CONFIG_BT_HCIUART_LL=y -CONFIG_BT_HCIBCM203X=m -CONFIG_BT_HCIBPA10X=m -CONFIG_BT_HCIBFUSB=m -CONFIG_BT_HCIDTL1=m -CONFIG_BT_HCIBT3C=m -CONFIG_BT_HCIBLUECARD=m -CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIVHCI=m -CONFIG_BT_MRVL=m -CONFIG_BT_MRVL_SDIO=m -CONFIG_BT_ATH3K=m -CONFIG_CFG80211=m -CONFIG_CFG80211_WEXT=y -CONFIG_MAC80211=m -CONFIG_RFKILL=y -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -CONFIG_MTD=y -CONFIG_MTD_CMDLINE_PARTS=y -CONFIG_MTD_BLOCK=y -CONFIG_MTD_ROM=y -CONFIG_MTD_COMPLEX_MAPPINGS=y -CONFIG_MTD_PHYSMAP=y -CONFIG_MTD_NAND=y -CONFIG_MTD_NAND_SHARPSL=y -CONFIG_MTD_UBI=y -CONFIG_BLK_DEV_LOOP=m -CONFIG_BLK_DEV_CRYPTOLOOP=m -CONFIG_BLK_DEV_NBD=m -CONFIG_BLK_DEV_RAM=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_PATA_PXA=y -CONFIG_PATA_PCMCIA=y -CONFIG_NETDEVICES=y -CONFIG_BONDING=m -CONFIG_DUMMY=m -CONFIG_NETCONSOLE=y -CONFIG_TUN=m -# CONFIG_NET_VENDOR_3COM is not set -# CONFIG_NET_VENDOR_AMD is not set -# CONFIG_NET_CADENCE is not set -# CONFIG_NET_VENDOR_BROADCOM is not set -# CONFIG_NET_VENDOR_CIRRUS is not set -# CONFIG_NET_VENDOR_FARADAY is not set -# CONFIG_NET_VENDOR_FUJITSU is not set -# CONFIG_NET_VENDOR_INTEL is not set -# CONFIG_NET_VENDOR_MARVELL is not set -# CONFIG_NET_VENDOR_MICREL is not set -# CONFIG_NET_VENDOR_MICROCHIP is not set -CONFIG_PCMCIA_PCNET=m -# CONFIG_NET_VENDOR_SEEQ is not set -# CONFIG_NET_VENDOR_SMSC is not set -# CONFIG_NET_VENDOR_STMICRO is not set -# CONFIG_NET_VENDOR_WIZNET is not set -# CONFIG_NET_VENDOR_XIRCOM is not set -CONFIG_PPP=m -CONFIG_PPP_BSDCOMP=m -CONFIG_PPP_DEFLATE=m -CONFIG_PPP_FILTER=y -CONFIG_PPP_MULTILINK=y -CONFIG_PPPOE=m -CONFIG_PPP_ASYNC=m -CONFIG_PPP_SYNC_TTY=m -CONFIG_SLIP=m -CONFIG_SLIP_COMPRESSED=y -CONFIG_SLIP_SMART=y -CONFIG_SLIP_MODE_SLIP6=y -CONFIG_USB_CATC=m -CONFIG_USB_KAWETH=y -CONFIG_USB_PEGASUS=y -CONFIG_USB_RTL8150=y -CONFIG_USB_USBNET=y -CONFIG_USB_NET_DM9601=y -CONFIG_USB_NET_SMSC75XX=y -CONFIG_USB_NET_SMSC95XX=y -CONFIG_USB_NET_MCS7830=y -CONFIG_USB_ALI_M5632=y -CONFIG_USB_AN2720=y -CONFIG_USB_KC2190=y -CONFIG_USB_NET_INT51X1=y -CONFIG_USB_SIERRA_NET=m -CONFIG_AIRO_CS=m -CONFIG_HOSTAP=m -CONFIG_HOSTAP_FIRMWARE=y -CONFIG_HOSTAP_CS=m -CONFIG_RT2X00=m -CONFIG_RT73USB=m -CONFIG_INPUT_MOUSEDEV_SCREEN_X=640 -CONFIG_INPUT_MOUSEDEV_SCREEN_Y=480 -CONFIG_INPUT_EVDEV=y -CONFIG_INPUT_APMPOWER=y -CONFIG_KEYBOARD_GPIO=y -CONFIG_KEYBOARD_MATRIX=y -CONFIG_INPUT_TOUCHSCREEN=y -CONFIG_TOUCHSCREEN_ADS7846=y -CONFIG_INPUT_MISC=y -CONFIG_INPUT_UINPUT=m -CONFIG_SERIAL_8250=m -# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set -CONFIG_SERIAL_8250_CS=m -CONFIG_SERIAL_PXA=y -CONFIG_SERIAL_PXA_CONSOLE=y -CONFIG_SPI_PXA2XX=y -CONFIG_GPIO_SYSFS=y -CONFIG_POWER_SUPPLY=y -CONFIG_PDA_POWER=y -CONFIG_APM_POWER=y -CONFIG_WATCHDOG=y -CONFIG_SOFT_WATCHDOG=m -CONFIG_FB=y -CONFIG_FB_PXA=y -CONFIG_FB_PXA_OVERLAY=y -CONFIG_FB_PXA_SMARTPANEL=y -CONFIG_FB_PXA_PARAMETERS=y -CONFIG_BACKLIGHT_LCD_SUPPORT=y -CONFIG_LCD_CLASS_DEVICE=y -CONFIG_LCD_CORGI=y -CONFIG_BACKLIGHT_CLASS_DEVICE=y -CONFIG_FRAMEBUFFER_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y -CONFIG_LOGO=y -CONFIG_SOUND=m -CONFIG_SND=m -CONFIG_SND_SEQUENCER=m -CONFIG_SND_MIXER_OSS=m -CONFIG_SND_PCM_OSS=m -CONFIG_SND_SEQUENCER_OSS=y -CONFIG_SND_PXA2XX_AC97=m -CONFIG_SND_USB_AUDIO=m -CONFIG_SND_SOC=m -CONFIG_SND_PXA2XX_SOC=m -CONFIG_SND_PXA2XX_SOC_SPITZ=m -CONFIG_HID=m -CONFIG_USB_HID=m -CONFIG_USB_KBD=m -CONFIG_USB_MOUSE=m -CONFIG_USB=y -CONFIG_USB_DEBUG=y -CONFIG_USB_ANNOUNCE_NEW_DEVICES=y -CONFIG_USB_OTG_WHITELIST=y -CONFIG_USB_MON=m -CONFIG_USB_OHCI_HCD=y -CONFIG_USB_SL811_HCD=m -CONFIG_USB_SL811_CS=m -CONFIG_USB_ACM=m -CONFIG_USB_PRINTER=m -CONFIG_USB_MDC800=m -CONFIG_USB_MICROTEK=m -CONFIG_USB_SERIAL=m -CONFIG_USB_SERIAL_GENERIC=y -CONFIG_USB_SERIAL_BELKIN=m -CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -CONFIG_USB_SERIAL_CYPRESS_M8=m -CONFIG_USB_SERIAL_EMPEG=m -CONFIG_USB_SERIAL_FTDI_SIO=m -CONFIG_USB_SERIAL_VISOR=m -CONFIG_USB_SERIAL_IPAQ=m -CONFIG_USB_SERIAL_IR=m -CONFIG_USB_SERIAL_EDGEPORT=m -CONFIG_USB_SERIAL_EDGEPORT_TI=m -CONFIG_USB_SERIAL_GARMIN=m -CONFIG_USB_SERIAL_IPW=m -CONFIG_USB_SERIAL_KEYSPAN_PDA=m -CONFIG_USB_SERIAL_KEYSPAN=m -CONFIG_USB_SERIAL_KLSI=m -CONFIG_USB_SERIAL_KOBIL_SCT=m -CONFIG_USB_SERIAL_MCT_U232=m -CONFIG_USB_SERIAL_PL2303=m -CONFIG_USB_SERIAL_SAFE=m -CONFIG_USB_SERIAL_TI=m -CONFIG_USB_SERIAL_CYBERJACK=m -CONFIG_USB_SERIAL_XIRCOM=m -CONFIG_USB_SERIAL_OMNINET=m -CONFIG_USB_EMI62=m -CONFIG_USB_EMI26=m -CONFIG_USB_RIO500=m -CONFIG_USB_LEGOTOWER=m -CONFIG_USB_LCD=m -CONFIG_USB_LED=m -CONFIG_USB_CYTHERM=m -CONFIG_USB_IDMOUSE=m -CONFIG_NOP_USB_XCEIV=m -CONFIG_USB_GPIO_VBUS=m -CONFIG_USB_ULPI=y -CONFIG_USB_GADGET=m -CONFIG_USB_GADGET_DEBUG_FILES=y -CONFIG_USB_GADGET_DEBUG_FS=y -CONFIG_USB_PXA27X=m -CONFIG_USB_ZERO=m -CONFIG_USB_ETH=m -CONFIG_USB_ETH_EEM=y -CONFIG_USB_GADGETFS=m -CONFIG_USB_MASS_STORAGE=m -CONFIG_USB_G_SERIAL=m -CONFIG_USB_CDC_COMPOSITE=m -CONFIG_USB_G_MULTI=m -CONFIG_USB_G_MULTI_CDC=y -CONFIG_MMC=y -CONFIG_MMC_UNSAFE_RESUME=y -CONFIG_MMC_PXA=y -CONFIG_MMC_SPI=y -CONFIG_NEW_LEDS=y -CONFIG_LEDS_CLASS=y -CONFIG_LEDS_GPIO=y -CONFIG_LEDS_TRIGGERS=y -CONFIG_LEDS_TRIGGER_TIMER=y -CONFIG_LEDS_TRIGGER_HEARTBEAT=y -CONFIG_RTC_CLASS=y -CONFIG_RTC_DRV_SA1100=y -CONFIG_EXT2_FS=y -CONFIG_EXT3_FS=y -# CONFIG_EXT3_FS_XATTR is not set -CONFIG_EXT4_FS=y -CONFIG_AUTOFS4_FS=y -CONFIG_FUSE_FS=m -CONFIG_CUSE=m -CONFIG_VFAT_FS=y -CONFIG_TMPFS=y -CONFIG_TMPFS_POSIX_ACL=y -CONFIG_JFFS2_FS=y -CONFIG_JFFS2_SUMMARY=y -CONFIG_JFFS2_COMPRESSION_OPTIONS=y -CONFIG_JFFS2_LZO=y -CONFIG_UBIFS_FS=y -CONFIG_UBIFS_FS_ADVANCED_COMPR=y -CONFIG_CRAMFS=y -CONFIG_MINIX_FS=m -CONFIG_ROMFS_FS=m -CONFIG_NFS_FS=m -CONFIG_NFS_V4=m -CONFIG_NFSD=m -CONFIG_NFSD_V4=y -CONFIG_CIFS=m -CONFIG_NLS_CODEPAGE_437=m -CONFIG_NLS_CODEPAGE_737=m -CONFIG_NLS_CODEPAGE_775=m -CONFIG_NLS_CODEPAGE_850=m -CONFIG_NLS_CODEPAGE_852=m -CONFIG_NLS_CODEPAGE_855=m -CONFIG_NLS_CODEPAGE_857=m -CONFIG_NLS_CODEPAGE_860=m -CONFIG_NLS_CODEPAGE_861=m -CONFIG_NLS_CODEPAGE_862=m -CONFIG_NLS_CODEPAGE_863=m -CONFIG_NLS_CODEPAGE_864=m -CONFIG_NLS_CODEPAGE_865=m -CONFIG_NLS_CODEPAGE_866=m -CONFIG_NLS_CODEPAGE_869=m -CONFIG_NLS_CODEPAGE_936=m -CONFIG_NLS_CODEPAGE_950=m -CONFIG_NLS_CODEPAGE_932=m -CONFIG_NLS_CODEPAGE_949=m -CONFIG_NLS_CODEPAGE_874=m -CONFIG_NLS_ISO8859_8=m -CONFIG_NLS_CODEPAGE_1250=m -CONFIG_NLS_CODEPAGE_1251=m -CONFIG_NLS_ASCII=m -CONFIG_NLS_ISO8859_1=m -CONFIG_NLS_ISO8859_2=m -CONFIG_NLS_ISO8859_3=m -CONFIG_NLS_ISO8859_4=m -CONFIG_NLS_ISO8859_5=m -CONFIG_NLS_ISO8859_6=m -CONFIG_NLS_ISO8859_7=m -CONFIG_NLS_ISO8859_9=m -CONFIG_NLS_ISO8859_13=m -CONFIG_NLS_ISO8859_14=m -CONFIG_NLS_ISO8859_15=m -CONFIG_NLS_KOI8_R=m -CONFIG_NLS_KOI8_U=m -CONFIG_NLS_UTF8=m -CONFIG_DEBUG_FS=y -CONFIG_MAGIC_SYSRQ=y -# CONFIG_DEBUG_BUGVERBOSE is not set -# CONFIG_FTRACE is not set -CONFIG_SECURITY=y -CONFIG_CRYPTO_NULL=m -CONFIG_CRYPTO_AUTHENC=y -CONFIG_CRYPTO_TEST=m -CONFIG_CRYPTO_CBC=y -CONFIG_CRYPTO_HMAC=y -CONFIG_CRYPTO_XCBC=m -CONFIG_CRYPTO_MD5=y -CONFIG_CRYPTO_SHA1=y -CONFIG_CRYPTO_SHA512=m -CONFIG_CRYPTO_WP512=m -CONFIG_CRYPTO_ANUBIS=m -CONFIG_CRYPTO_BLOWFISH=m -CONFIG_CRYPTO_CAMELLIA=m -CONFIG_CRYPTO_CAST5=m -CONFIG_CRYPTO_CAST6=m -CONFIG_CRYPTO_DES=y -CONFIG_CRYPTO_KHAZAD=m -CONFIG_CRYPTO_SERPENT=m -CONFIG_CRYPTO_TEA=m -CONFIG_CRYPTO_TWOFISH=m -CONFIG_CRC_CCITT=y -CONFIG_FONTS=y diff --git a/recipes-kernel/linux/linux-yocto-3.14/c7x0/corgi-gpio_keys.patch b/recipes-kernel/linux/linux-yocto-3.14/c7x0/corgi-gpio_keys.patch deleted file mode 100644 index 3f809e1..0000000 --- a/recipes-kernel/linux/linux-yocto-3.14/c7x0/corgi-gpio_keys.patch +++ /dev/null @@ -1,80 +0,0 @@ -From dc5dfab4ed18f0756f304dc5699b5743ddf56f90 Mon Sep 17 00:00:00 2001 -From: Dmitry Eremin-Solenikov -Date: Tue, 25 Feb 2014 15:59:19 +0400 -Subject: [PATCH] ARM: pxa: add gpio keys information - -Switching from corgikbd to matrixkbd corgi has lost support for few switches. -Readd them through gpio-keys-polled device (-polled, since scoop does -not provide IRQ for GPIO). - -Signed-off-by: Dmitry Eremin-Solenikov -Signed-off-by: Haojian Zhuang - -diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c -index f162f1b..57d6054 100644 ---- a/arch/arm/mach-pxa/corgi.c -+++ b/arch/arm/mach-pxa/corgi.c -@@ -32,6 +32,7 @@ - #include - #include - #include -+#include - #include - #include